我正在使用这个jquery插件:http: //docs.jquery.com/Plugins/Validation
我想写一个条件语句.
如果用户将特定表单字段留空,则不需要该字段.但是,如果它们不留空,则必须以数字开头
对于"必须以数字开头"部分,我认为您需要一个自定义规则.
对于"必需,如果另一个字段不为空"部分,您可以使用依赖表达式来确定验证程序运行时是否需要它:
把它们放在一起,你就会有这样的东西:
<form>
<input name="first">
<input name="second">
</form>
Run Code Online (Sandbox Code Playgroud)
$.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() !== '';
}
}
}
});
Run Code Online (Sandbox Code Playgroud)
演示:http://jsfiddle.net/qCELA/2/
我需要做的形式只有一个输入.如果用户将其留空,则不适用任何规则.否则,该单个输入字段必须以数字开头.
如果您只有一个输入字段,则只需要自定义规则:
$('form').validate({
rules: {
second: {"startsWithNum" : true}
}
});
Run Code Online (Sandbox Code Playgroud)
演示:http://jsfiddle.net/qCELA/3/