如果使用 jQuery 验证器插件选择了单选按钮按钮,则将不同的 addMethod 应用于字段
Apply different addMethod to a field if radio button button seelcted using jQuery validator plugin
如果选择了某个单选按钮值,我需要将不同的 addMethod 应用于单个字段。
如果选择单选按钮值 = true,则应将附加方法 X 应用于该字段,如果选择单选按钮值 = false,则应将附加方法 Y 应用于同一字段。
我尝试在单个 addMethod 中使用条件语句来完成此操作,但无法为每个实例显示唯一的错误消息。
$.validator.addMethod("RegistrationNumber", function (value, element) {
if($("#radio-1").is(":checked")) {
//opt 1
} else {
//opt 2
}
}, "message");
<input type="radio" name="reg" id="radio-1" value="true"/> true
<input type="radio" name="reg" id="radio-2" value="false"/> false
<input type="text" name="RegistrationNumber"/>
我在这里有哪些选择?我做错了什么?
我想你可以有 2 个不同的规则,并使用 depends
值
根据检查状态启用它
$.validator.addMethod("RegistrationNumberX", function (value, element) {
//return true/false based on validation
return false;
}, "messageX");
$.validator.addMethod("RegistrationNumberY", function (value, element) {
//return true/false based on validation
return false;
}, "messageY");
然后
something: {
RegistrationNumberX: {
depends: function () {
return $("#radio").is(":checked")
}
},
RegistrationNumberY: {
depends: function () {
return !$("#radio").is(":checked")
}
}
}
演示:Fiddle
//下面的代码检查你的单选按钮是否有像 'yourRadioName' 这样的名字
//是否检查
$(document).ready(function() {
if($("input:radio[name='yourRadioName']").is(":checked")) {
//its checked
}
else
{
}
});
如果选择了某个单选按钮值,我需要将不同的 addMethod 应用于单个字段。
如果选择单选按钮值 = true,则应将附加方法 X 应用于该字段,如果选择单选按钮值 = false,则应将附加方法 Y 应用于同一字段。
我尝试在单个 addMethod 中使用条件语句来完成此操作,但无法为每个实例显示唯一的错误消息。
$.validator.addMethod("RegistrationNumber", function (value, element) {
if($("#radio-1").is(":checked")) {
//opt 1
} else {
//opt 2
}
}, "message");
<input type="radio" name="reg" id="radio-1" value="true"/> true
<input type="radio" name="reg" id="radio-2" value="false"/> false
<input type="text" name="RegistrationNumber"/>
我在这里有哪些选择?我做错了什么?
我想你可以有 2 个不同的规则,并使用 depends
值
$.validator.addMethod("RegistrationNumberX", function (value, element) {
//return true/false based on validation
return false;
}, "messageX");
$.validator.addMethod("RegistrationNumberY", function (value, element) {
//return true/false based on validation
return false;
}, "messageY");
然后
something: {
RegistrationNumberX: {
depends: function () {
return $("#radio").is(":checked")
}
},
RegistrationNumberY: {
depends: function () {
return !$("#radio").is(":checked")
}
}
}
演示:Fiddle
//下面的代码检查你的单选按钮是否有像 'yourRadioName' 这样的名字 //是否检查
$(document).ready(function() {
if($("input:radio[name='yourRadioName']").is(":checked")) {
//its checked
}
else
{
}
});