2010-08-26 11 views
5

Estoy usando el plugin validación jQuery para hacer algo de validación. Tengo un servicio que devuelve "verdadero" y "falso" en este momento y todo es genial.jQuery validación remota con mensaje de error generado por el servidor

Sin embargo, el mensaje de error que estoy usando es "Ese nombre ya está tomado".

Quiero que el mensaje de error sea "That name is already <a href="/item?id=543"> taken</a>." donde el ID de elemento es algo devuelto por el servidor. Pero no puedo encontrar la forma de devolver nada del servidor que no sea un solo verdadero o falso y todavía tengo la validación de trabajo.

Sé que puedo hacer "Se toma el nombre xxx" usando JQuery.Format ("Se toma el nombre {0}") pero realmente quiero dar un hipervínculo al elemento existente, y no quiero tener que cambiar las páginas del elemento para aceptar un nombre en lugar de una identificación.

+0

¿Qué sucede cuando devuelves esa cadena? Que * debería * funcionar ya, cualquier cadena se trata como un mensaje de error. –

+0

no pasa nada. Incluso si establezco un punto de ruptura en la devolución de llamada exitosa de la llamada ajax en el complemento de validación, no se golpea el punto de ruptura. Se activa cuando devuelvo "verdadero" o "falso", pero no "Esto es un mensaje de error" – tster

+1

¿Pasa la cadena entre comillas? –

Respuesta

9

El plug-in de validación se encarga de esto ya, pero el tipo de llamada es "json", por lo que necesita para asegurarse de que el (mensaje de error) cadena se pasa entre comillas, así:

"Error Message" 

el plugin utilizar este como el mensaje de error que se muestra, útil ¿eh? :)

+0

Espera, por lo que estaba haciendo algo así como 'devolver esto es mi mensaje de error; 'en lugar de' devolver "este es mi mensaje de error"; '? O hay algo más sucediendo aquí que no estoy recibiendo. – brentonstrine

Cuestiones relacionadas