我没有得到那种工作方法dnicheck。如果我输入错误的号码,我不会查看任何消息。
我的main.js
$.validator.setDefaults({
errorClass: 'form_error',
errorElement: 'div'
});
$.validator.addMethod("dniCheck", function(value, element){
var valor = false;
if(/^([0-9]{8})*[a-zA-Z]+$/.test(value)){
var numero = value.substr(0, value.length-1);
numero = numero % 23;
var let = 'TRWAGMYFPDXBNJZSQVHLCKET';
letra = let.substring(numero,numero+1);
if(letra===let) valor = true;
}
valor = this.optional(element);
console.log(valor);
return valor;
},"DNI no válido");
$("#form_participante").validate({
rules:{
nie:{
dniCheck: true
}
},
messages:{
nie:{
dniCheck:"Introduce el dni correcto"
}
}
});
我的表格
<form id="form_participante" action="{{ urlFor('AltaParticipante') }}" method="POST" class="form-horizontal">
<fieldset>
<legend>Alta nuevo participante</legend>
<div class="form-group">
<label class="col-md-4 control-label" for="nieP">Nie participante</label>
<div class="col-md-5">
<input id="nieP" name="nieP" placeholder="Nie del participante..." class="form-control input-md" type="text" />
</div>
</div>
...
</form>
在其他形式中,我很好地验证了字段
我没有收到任何错误。
github中的答案 0 :(得分:0)
脚本中的第一行是否遗漏了$
?
答案 1 :(得分:0)
您的字段name
为nieP
,但您在nie
方法中将其拼错为.validate()
。 name
属性必须匹配。
$("#form_participante").validate({
rules: {
nie: { // <- MUST match the NAME attribute
dniCheck: true
}
}, .....