我使用的是jquery插件:http://docs.jquery.com/Plugins/Validation
我想写一个有条件的陈述。
如果用户将特定的表单字段留为空白,则不需要该字段。但是,如果他们不将其留空,则必须以数字开头。
发布于 2011-10-29 07:21:00
对于“必须从数字开始”部分,我认为您需要一个自定义规则。
对于“如果另一个字段不是空的”部分,您可以使用依赖表达式来确定验证器运行时是否需要它:
把它们放在一起,你就会得到这样的东西:
<form>
<input name="first">
<input name="second">
</form>
$.validator.addMethod("startsWithNum", function(input, element) {
// First char must be digit if not empty
return ! input || input.match(/^[0-9]/);
}, "This field must start with a number");
$('form').validate({
rules: {
first: {required : true},
second: {
"startsWithNum" : true,
required: function() {
// required if <input name="first"> is not empty
return $('[name="first"]').val() !== '';
}
}
}
});
演示:http://jsfiddle.net/qCELA/2/
在我需要做的表单中只有一个输入。如果用户将其保留为空白,则不适用任何规则。否则,该单个输入字段必须以数字开头。
如果只有一个输入字段,则只需使用自定义规则:
$('form').validate({
rules: {
second: {"startsWithNum" : true}
}
});
演示:http://jsfiddle.net/qCELA/3/
https://stackoverflow.com/questions/7937430
复制相似问题