首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Regex与JqueryUI验证

使用Regex与JqueryUI验证
EN

Stack Overflow用户
提问于 2014-09-21 16:10:32
回答 1查看 269关注 0票数 1

我试图按照JQueryUI的指导向我的jQuery validate: How to add a rule for regular expression validation?验证器添加regex验证。

代码语言:javascript
运行
复制
$.validator.addMethod(
        "regex",
        function(value, element, regexp) {
            var re = new RegExp(regexp);
            return this.optional(element) || re.test(value);
        },
        "Please check your input."
);

代码语言:javascript
运行
复制
$("#Textbox").rules("add", { regex: "^[a-zA-Z'.\\s]{1,40}$" })

我想要包含的正则表达式是

代码语言:javascript
运行
复制
^(\d+(?:(?: \d+)*\/\d+)?)$

它可以在http://regex101.com/r/cB3fQ1/2上看到

当我在jquery中输入regex时,没有条目通过。我就是这样输入的

代码语言:javascript
运行
复制
$("#Textbox").rules("add", { regex: "^(\d+(?:(?: \d+)*\/\d+)?)$" })

是因为我把它包装成一个字符串,而某些syntac是相互冲突的吗?我在regex方面缺乏经验,不知道如何解决这个问题。如果你知道我的错误在哪里,请告诉我。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-21 16:11:49

您需要双转义反斜杠,因为您输入regex为字符串:

代码语言:javascript
运行
复制
$("#Textbox").rules("add", { regex: "^(\\d+(?:(?: \\d+)*\/\\d+)?)$" })

否则使用regex文字

代码语言:javascript
运行
复制
$("#Textbox").rules("add", { regex: /^(\d+(?:(?: \d+)*\/\d+)?)$/ })
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25961154

复制
相关文章

相似问题

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