首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >条件验证依赖于2个元素

条件验证依赖于2个元素
EN

Stack Overflow用户
提问于 2019-04-30 04:20:07
回答 1查看 34关注 0票数 0

通过jquery验证,我已经使用.addMethod添加了一个正则表达式。我也有一个规则,如果一个复选框没有被选中,那么它将要求元素被填写以及符合正则表达式。

noPreviousEmployers是复选框的id,如果选中该复选框,则不应显示任何验证消息;如果未选中,则将显示所需的消息;如果输入中包含数据,则应运行正则表达式

代码语言:javascript
复制
    $.validator.addMethod("regex", function (value, element, regexpr) {
       return regexpr.test(value);
    }, "");


rules:{
    EndSalary1:{
        required: '#noPreviousEmployers:unchecked', 
        regex: /^\$?[0-9]{1,3}(\,?\d{3})?(\,?\d{3})?(\.[0-9]{2})?$/
    }

},
messages:{  
    EndSalary1:{
         required: "Required Field", 
         regex: "Format As US Currency"
    }    
}

我甚至试过这个

代码语言:javascript
复制
$.validator.addMethod("regex", function (value, element, regexpr) {
    if(value.length != 0){
        return regexpr.test(value);
    }
}, "");     

当我在复选框被选中并且字段中没有数据的情况下进行测试时,它将显示用于正则表达式验证的消息。在这种情况下,它不应该显示任何内容。

EN

Stack Overflow用户

发布于 2019-04-30 10:01:14

您不需要为任何新的regex模式编写自定义规则。the additional-methods.js file中已经内置了一个名为pattern的默认规则,它接受正则表达式作为其参数。

代码语言:javascript
复制
rules:{
    EndSalary1:{
        required: '#noPreviousEmployers:unchecked', 
        pattern: /^\$?[0-9]{1,3}(\,?\d{3})?(\,?\d{3})?(\.[0-9]{2})?$/
    }
}

演示jsfiddle.net/mrf5ja4d/

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55910298

复制
相关文章

相似问题

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