我有一个在线调查,我正在使用jquery验证。
所以每个问题都有4个选项,每个选项都是一个单选按钮。
当我构建我的jquery validatio规则时,我该如何引用它们?
每个问题选项都有一个ID和名称。
以下是我到目前为止所做的事情,但它无效。
$(document).ready(function() {
$("#myForm").validate({
rules : {
someQuestionId123 : {required : true }
});
});
其中someQuestionId123是单选按钮元素的名称。
答案 0 :(得分:1)
您使用});
...
rules : {
someQuestionId123 : {required : true }
});
使用jQuery Validate插件的.validate()
方法,必须通过name
引用它们。
由于一组radio
按钮应该共享相同的name
,因此您已经正确地执行了此操作(在修复括号问题后)...
$(document).ready(function() {
$("#myForm").validate({
rules: {
someQuestionId123: { // <-- NAME attribute
required: true
}
} // <-- right here, you incorrectly had '});'
});
});
<强> HTML 强>:
<input type="radio" name="someQuestionId123" value="one" />
<input type="radio" name="someQuestionId123" value="two" />
<input type="radio" name="someQuestionId123" value="three" />
<input type="radio" name="someQuestionId123" value="four" />
DEMO :http://jsfiddle.net/5dsJQ/
最后,你的最新jsFiddle被破坏了,因为你-
中有特殊字符,例如name
......
rules: {
someQuestionId-123: {
required: true
}
}
As per the "reference docs",您需要将名称括在引号中以解决此问题......
rules: {
"someQuestionId-123": {
required: true
}
}
通常,如果您将这些名称用作JavaScript目标,则应避免使用短划线命名-
,因为JavaScript有时会将其解释为减号。对于jQuery Validate,引号将解决这个问题。