function validateEmail(){
// ###############################
$( “#contato_form”)。验证({
errorContainer:“#wrapperError”,
errorLabelContainer:“#wrapperError span.error”,
调试:真实,
规则:{
nome:{required:true},
电子邮件:{required:true},
mensagem:{required:true}
},
消息:{
nome:{required:'Informe seu nome。' },
电子邮件:{required:'Informeumedompreçomailválido。' },
mensagem:{required:'Por favor,escreva sua mensagem。' }
},
submitHandler:function(){
$就({
类型:“POST”,
网址:“http://www.mydomain.com/sendemail.php”,
data:({nome:$(“input#nome”)。val(),email:$(“input#email”)。val(),mensagem:$(“textarea#mensagem”)。val()}) ,
成功:函数(msg){
$('div#enviado')。html('')。append(msg);
}
});
}
});
}
当我提交时。我收到此错误消息:
Informe seu nome.Informe um endereço email válido.Por favor, escreva sua mensagem.
如何才能获得第一个错误no errorContainer?一旦第一个输入正常,那么下一个错误依此类推......
由于
答案 0 :(得分:7)
showErrors: function(errorMap, errorList) {
if (errorList.length) {
var s = errorList.shift();
var n = [];
n.push(s);
this.errorList = n;
}
this.defaultShowErrors();
},
此代码从插件errorList中删除所有错误元素,但首先在验证完成后但在显示之前删除。我认为,这可以用更短的方式编写,但为了便于理解解决方案的想法而留下。我希望这有帮助。还有一句话......有时,在某些情况下,而不是只有一条错误消息可以显示所有这些消息。为防止这种情况,请尝试通过以下代码对字段进行分组(例如):
groups: {
logon: "login password"
},messages : {
login : {required:"Enter login"},
password : {required:"Enter password"}
}
答案 1 :(得分:0)
不确定这是否可行,但您可以使用以下代码在submitHandler函数中首先更改错误文本:
var errorSpan = $('#wrapperError span.error');
errorSpan.text(errorSpan.text().match(/^[^.]*\.?/g));