Estoy tratando de implementar la validación de jQuery con http://docs.jquery.com/Plugins/Validation:Validación de Jquery: ¿error al agregar reglas al elemento de entrada?
Mi plan de diseño:
Mi entrada elemento:
<form action="submit.php" id="form_id"> <input type="text" class="val-req" id="my_input" name="myval" /> <input type="button" onclick="validate_form('form_id', function() { $('#form_id').submit(); })" /> <span id="val-msg" class="my_input"></span> </form>
Luego, el listo dom:
$(document).ready(function() { $('.val-req').rules('add', {required:true}); });
método Validar:
function validate_form(form_id, callback) { var form = $('#'+form_id); $('.val-req').each(function() {$(this).rules('add', {required:true});}); $(form).validate({ errorElement: "span", errorClass: "val-error", validClass: "val-valid", errorPlacement: function(error, element) { $('#val-msg.'+$(element).attr('id')).innerHTML(error.html()); }, submitHandler: callback }); }
De acuerdo con mis expectativas, debería mostrar el mensaje de error en el lapso de marcador de posición en forma.
Pero, Problema
Error on Chrome-Console: Uncaught TypeError: Cannot read property 'settings' of undefined
También está dando error en otros navegadores. Entonces, traté de averiguar de salida del problema y encontrado:
$('.val-req').rules('add', {required:true}); # This is causing the error
Como, por mi entendimiento y documentación -> Esto debería ser correcta.
¿Por qué esto causaría TypeError y qué puedo hacer para resolverlo?
FYI, comencé un debate sobre esta cuestión [aquí] (http://meta.stackexchange.com/q/133057/153691). –
Ha habido una confusión: un error tipográfico resolvió el problema. Lo niego Hice el error al escribir la pregunta, que luego se corrigió, pero ese no era el problema. –
El problema persiste y no tengo ni idea de qué pasa con mi implementación. –