我有一个包含 3 个必填字段的表单:姓名、电子邮件和主题。 如果我为每个规则创建一条规则,它们会打开 3 个警告。我更喜欢对所有字段都发出相同的警告(都必须填写,否则表单将不会提交)。
目前,我成功地处理了电子邮件。但我想知道我是否可以做这样的事情:
var validator = new FormValidator('contactos-form', [{
name: 'nome,email,assunto',
rules: 'required'
}]
我该怎么做? 请帮忙! :) 谢谢
<div class="formArea">
<div class="main-content-block-entry">
<form method="post" name="contactos-form" class="add-comment-form" action="#">
<input type="hidden" value="rodolfovieiradias@gmail.com" name="emailReceiver">
<p><input type="text" placeholder="nome/ empresa" name="nome" class="nome"><input type="email" placeholder="email" name="email" id="email" class="email"></p>
<p><textarea placeholder="assunto" name="assunto" class="assunto"></textarea></p>
<p><button type="submit" name="submit"><i class="submit"></i> Submeter</button></p>
<div class="statusMensagem"></div>
</form>
</div>
</div>
<script>
var validator = new FormValidator('contactos-form', [{
name: 'email',
rules: 'email',
rules: 'required'
}], function(errors, evt) {
var SELECTOR_ERRORS = $('.statusMensagem');
if (errors.length > 0) {
SELECTOR_ERRORS.empty();
for (var i = 0, errorLength = errors.length; i < errorLength; i++) {
SELECTOR_ERRORS.append(errors[i].message + '<br />');
}
SELECTOR_ERRORS.fadeIn(200);
} else {
SELECTOR_ERRORS.css({ display: 'none' });
// Tens de chamar a função que vai enviar os dados para o servidor
enviaform();
}
if (evt && evt.preventDefault) {
evt.preventDefault();
} else if (event) {
event.returnValue = false;
}
});
console.debug(validator);
</script>
最佳答案
您可以通过编辑验证器 JavaScript 文件中 FormValidator 方法的定义来更改此设置。
简单的解决方案是添加 FormValidator 方法,例如:
$('#myform').validate({ // initialize the plugin
rules: {
field1: {
required: true,
email: true
},
field2: {
required: true,
minlength: 5
}
}
});
引用号:A simple jQuery form validation script
Fiddle
关于javascript - 形式 : One warning for all required fields,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22817746/