jQuery.Validate条件validationRadioButton和DropDownList
我正在尝试设置一些validation,这样如果选中“是”单选按钮,则需要validation另一个控件,即下拉列表,以确保它未设置为列表中的默认第一个条目“请选择…“。
我尝试了很多组合,但还没能让它发挥作用。 validation消息显示是否选中了复选框。
这是一些代码!
这是我用来validation下拉列表的自定义方法。 (这适用于简单的DDLvalidation)
$.validator.addMethod( "selectNone", function(value, element) { return this.optional(element) || element.value != "Please Select..."; }, "Please select an option." );
要根据复选框进行validation,我已在表单中添加了规则
$(document).ready(function() { var validator = $("#BuildingsCoverForm").validate({ rules: { NCBYears: { selectNone: function(element) { return $("*[name='PreviousInsurance']")[0].checked; } } }, messages: { NCBYears: { selectNone: "This field is required" } } }); });
这是控件。
任何想法将非常感谢。
非常感谢
只要第一个下拉列表选项具有空值( ),
以下规则就可以使用:
rules: { NCBYears: { required: function(element) { return $("input:radio[name='PreviousInsurance']:checked").val() == 'yes'; } } }
来自: http : //docs.jquery.com/Plugins/Validation/Methods/required#dependency-expression
ScottE是对的。 我有一个从数据库填充的下拉列表,我只是在列表的最顶部附加了一个项目,并给它一个值“”。 validation输入时,只需对下拉列表进行validation为空。 如果列表永远不会更改,您也可以对列表进行硬编码,并使用空白值将项目添加到顶部,例如下面的示例。
_example.Add(new SelectListItem { Text = "Select Example", Value = ""});
这不适用于当前版本的Validate.js(v 1.7)
我也能certificate这个概念不起作用:
rules: { xyz: { required: function(element) { return true; } } }
这也失败了。