我在表单中使用它来检查单选按钮组是否具有特定值(是/否)。其中之一的 HTML 是:
<form id="registerHere">
<div class="control-group">
<label class="radio">
<input type="radio" value="Yes" name="freemedia">
Yes
</label>
<label class="radio">
<input type="radio" value="No" name="freemedia" checked="checked">
No
</label>
</div></form>
我正在使用以下 JS(包括 jQuery.validate.js):
<script type="text/javascript">
$(document).ready(function(){});
$("#registerHere").validate({
rules:{
freemedia:{
required:true,
equalTo: "Yes"
},
},
messages:{
freemedia:{
required:"Please select",
equalTo:"Please apply to the 'freemedia' group first.</a>"
},
},
});
});
</script>
但是,它没有正确检查值,因为它总是向我显示消息,无论是否选中"is"或“否”。
我哪里错了?
最佳答案
我清理了您的一些 jquery,其中有一些错误。
此外,在深入了解插件后,我注意到您可以使用“equalTo”参数来指定需要哪个控件。它只是使用“equalTo”作为查询的选择器。因此,如果您将“equalTo”设置视为 jquery 选择器,它应该可以工作。这可能有点hack,但我让它工作了。
您需要做的就是为您的单选按钮分配一个 id,然后就可以开始了
<div class="control-group">
<label class="radio">
<input id="chkYes" type="radio" value="Yes" name="freemedia" />
Yes
</label>
<label id="chkNo" class="radio">
<input type="radio" value="No" name="freemedia" />
No
</label>
<input type="submit" value="Submit" />
</div>
<script type="text/javascript">
$(document).ready(function () {
$("#registerHere").validate({
rules:
{
freemedia:
{
required: true,
equalTo: "#chkYes"
}
},
messages:
{
freemedia:
{
required: "Please select",
equalTo: "Please apply to the 'freemedia' group first."
}
}
});
});
</script>
关于javascript - jQuery 单选按钮值验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13774893/