【发布时间】:2015-04-01 07:48:46
【问题描述】:
我目前在我的页面中插入了 jquery 表单验证,我目前在尝试验证状态下拉列表时遇到问题,视图的构建方式是这样的。用户选择国家,然后返回控制器并返回与该国家相关联的状态并建立状态下拉列表。在选择一个国家之前,状态下拉列表的选择值为 0,并且根据我的理解,其文本是“请选择一个州”Jquery 表单验证将看到 0 并假定它是一个值,而不是在我的情况下这不是一个值我需要用户选择一个更大的值 0。所以当用户按下提交时,如果状态选择的值为 0,我需要显示错误消息,否则继续。这是我目前拥有的
$('#myForm').validate({ // initialize the plugin
rules: {
"UserDetails.SelectedCountry": "required",
"UserDetails.SelectedState": {
required: function (element) {
var value = $("#UserDetails_SelectedState").val() == 0;
if (value) { // If the value is true I need to return false to make it required
alert("here");
return false;
} else { // Otherwise value is greater then 0 ok to carry on,
return true;
}
}
}
"UserDetails.Postcode": "required"
},
messages: {
"UserDetails.SelectedCountry": "Please choose your country",
"UserDetails.SelectedState": "Please choose your state",
"UserDetails.Postcode": "Please enter your postcode",
}
});
请有人能够告诉/展示如何针对 0 进行验证。
** 更新**
我今天一直在与此作斗争,正如您从我的 jquery 标记中看到的那样,如果它是真的,然后返回假我看到警报消息“here”,但该字段没有以红色突出显示,也不是显示错误消息“请选择您的状态”,有人能在头顶上看到它可能是什么吗?
【问题讨论】:
标签: javascript jquery validation