Descripción general:
En mi forma, tengo un campo que requiere validación remota. En la llamada remota, envío el valor del elemento de formulario así como los valores de un par de otros elementos de formulario de los que puede depender este elemento (utilizado en el servidor para validación).jquery validación remota - validar si los datos en el campo o no
La validación remota, cuando se llama, funciona muy bien. El problema es que la validación remota solo se llama cuando hay un valor en el elemento de formulario. Dependiendo de los parámetros enviados a la validación remota, este elemento de formulario puede ser necesario o puede haber otros problemas de validación.
¿Cómo puedo forzar la validación remota en este campo si tiene datos o no?
escenario específico:
tenga una lista papeles, y una entrada de texto de código vendedor.
Lógica del lado del servidor: (1) si se seleccionó el rol de vendedor, se requiere código de vendedor; (2) si la función de vendedor no está seleccionada, el código de vendedor debe estar vacío.
Tenga en cuenta que tengo otros valores de elementos de formulario que envía al servidor y no hay otra lógica del lado del servidor que no he incluido aquí por razones de brevedad, ya que no añaden valor a esta pregunta y sólo confundir las cosas.
<select name="roles" id="roles" multiple="multiple" size="5"></select>
<input type="text" name="salespersoncode" id="salespersoncode" />
$("#add_user_form").validate({
rules: {
salespersoncode: {
remote: {
type: "post",
url: "/AdminJson/CheckSalespersonCode",
dataType: "json",
data: {
salespersoncode: function() { return $("#salespersoncode").val(); },
roles: function() { return $("#roles").val(); }
}
}
}
}
}
no quiero poner en la opción "necesaria" porque el campo de validación salespersoncode no es necesario en todas las situaciones.
Mi pregunta otra vez: ¿Cómo puedo forzar la validación remota en el campo de código de vendedor si tiene datos o no?
Gracias de antemano
Dentro de la función de validación(), no veo cómo puedo crear una variable local, como se recomienda. He actualizado mi pregunta para tener más detalles de validar el método. ¿Te importaría actualizar tu respuesta para decirme dónde puedo poner la var local sin que el navegador muestre errores js? –
tal vez intente eso? –