我使用的是jQuery.validation rails gem,与插件基本相同,默认情况下,如果存在错误,它应该会阻止我的表单提交。 出于某种原因,即使我正在盯着错误,它也会提交。 请让我知道为什么,因为我花了很多时间在这上面!!
$('.edit_profile').validate({
rules: {
'profile[first_name]': {
required: true,
minlength: 2
},
'profile[last_name]': {
required: true,
minlength: 2
},
'profile[location]': {
required: true,
minlength: 2
},
'profile[birthday]': {
check_date_of_birth: true,
required: true
},
'profile[operating_system]': {
required: true,
minlength: 1
},
'profile[about_me]': {
required: true,
minlength: 5,
maxlength: 500
},
}
});
答案 0 :(得分:0)
首先,确保顶部的选择器实际上是选择表单元素本身而不是任何包装div
或其他东西。然后,使用要验证的每个字段的name
属性。它不接受您正在使用的语法。
如果你的HTML看起来像这样:
<form class="profile">
<input type="text" name="first_name" />
<input type="text" name="last_name" />
...
</form>
然后验证的正确方法是:
$('.profile').validate({ // select the form
rules: {
first_name: { // use the "name" property as the "key" for each rule
required: true,
minlength: 2
},
last_name: {
required: true,
minlength: 2
},
...
}
});