javascript - Jquery 验证在值有效时不隐藏错误消息

标签 javascript jquery validation

我写了一个十进制验证方法来验证文本框中的文本:

$.validator.addMethod("decimalCheck", function(value) {
            var v = new RegExp("^\d*[0-9](\.\d*[0-9])?$", "g");
            return v.test(value);
        }, "Error here");

第一次,我将“12,34”字符串输入到文本框并显示错误消息。 第二次,我在文本框中输入了“12”字符串。这是有效的字符串,但不会隐藏错误消息。

请帮我解决 谢谢和最好的问候

最佳答案

试试这个(也稍微优化了具有相同功能的正则表达式)

$.validator.addMethod("decimalCheck", function(value) {
    var v = /^\d+(\.\d+)?$/;
    return v.test(value);
}, "Error here");

你的问题是你需要自己转义反斜杠(双重转义)否则正则表达式构造函数实际上会传入这个字符串 ("^d*[0-9](.d*[0- 9])?$")

var v = new RegExp("^\\d*[0-9](\\.\\d*[0-9])?$", "g");

顺便说一句。在此处使用 g 标志可能会导致意外结果。无论如何,最好不要使用 ^$

关于javascript - Jquery 验证在值有效时不隐藏错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1945829/

相关文章:

javascript - 使用适用于 JavaScript 的 Google API 客户端库访问 Google Sites API

javascript - 在 github API 上访问 github 存储库的正确端点是什么?

javascript - 获取变换后旋转物体的宽高

javascript - JS 和 Animate.css 间隔问题

ruby-on-rails - 更新时的 attr_accessor 和密码验证

PHP首先将数据发送到数据库然后验证

validation - Grails 根据 xsd 1.1 验证 xml 文档

javascript - 创建将拖入支架的图像数组

javascript - 窗口大小调整时多行文本 chop

javascript - 理解 jQuery 源代码中过于简单的模块的用途