我正在使用Jquery validate插件,并且它遇到了必需属性的问题,因为我的表单尽管具有必需属性但仍在提交。
我已经尝试过必需=“必需”并且只需要自己,但没有运气。
以下是我的示例代码:
<input id="txt_field1" name="txt_field1" type="text" required/>
也尝试过:
<input id="txt_field2" name="txt_field2" type="text" required="required"/>
我找到了2个解决方法,但似乎不是最好的方法。
$('form').validate({
rules: {
txt_field1: {
required: true
},
txt_field2: {
required: true
}
}
});
这似乎也有效:
$('form').validate();
$('input[required]').each(function () {
$(this).rules("add", {
required: true
});
});
有没有比添加额外代码以使其工作更好的方法?我正在使用Jquery Validate版本1.9。
由于
答案 0 :(得分:0)
您必须将class
属性设置为必需。
<input id="txt_field2" name="txt_field2" type="text" class="required"/>
答案 1 :(得分:-1)
我认为必需属性实际上是HTML5功能而不是jquery功能。在jquery中,您不需要输入必需的属性,只需将dom元素声明为您第一次处理状态所需的元素。某些浏览器尚不支持必需属性。
对于Safari,表单验证仅部分支持,即在提交期间未填写所需表单时不发出警告,而对于IE8则完全不支持。点击这些链接可获取更多信息:http://caniuse.com/#feat=form-validation和此处http://www.w3schools.com/tags/att_input_required.asp。