首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery验证条件语句?

jquery验证条件语句?
EN

Stack Overflow用户
提问于 2011-10-29 06:52:30
回答 1查看 3.6K关注 0票数 1

我使用的是jquery插件:http://docs.jquery.com/Plugins/Validation

我想写一个有条件的陈述。

如果用户将特定的表单字段留为空白,则不需要该字段。但是,如果他们不将其留空,则必须以数字开头。

EN

回答 1

Stack Overflow用户

发布于 2011-10-29 07:21:00

对于“必须从数字开始”部分,我认为您需要一个自定义规则。

对于“如果另一个字段不是空的”部分,您可以使用依赖表达式来确定验证器运行时是否需要它:

把它们放在一起,你就会得到这样的东西:

代码语言:javascript
运行
复制
<form>
    <input name="first">
    <input name="second">
</form>
代码语言:javascript
运行
复制
$.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/

在我需要做的表单中只有一个输入。如果用户将其保留为空白,则不适用任何规则。否则,该单个输入字段必须以数字开头。

如果只有一个输入字段,则只需使用自定义规则:

代码语言:javascript
运行
复制
$('form').validate({
    rules: {
        second: {"startsWithNum" : true}
    }
});

演示:http://jsfiddle.net/qCELA/3/

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7937430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档