【问题标题】:jQuery Validate, accept $ signjQuery 验证,接受 $ 符号
【发布时间】:2023-03-20 06:52:01
【问题描述】:

我有一个自定义验证器,它接受包括逗号或点在内的数字,这很完美。但是现在,我希望这个验证器也接受 $ 符号。例子:

122,00 美元
122.05 $
122 美元
122.10 美元

所有这些条目都应该被接受。

其实我的验证器是:

$.validator.addMethod("money", function (value, element) {
   return this.optional(element) || value.match(/^(\d+(?:[\.\,]\d{2})?)$/);
}, "Please provide a valid dollar amount");

我应该怎么做才能让我也接受美元符号?

谢谢

【问题讨论】:

  • 我从来没有见过你必须自己输入货币的输入字段......货币符号通常显示在外面,客户只需要一个数字
  • 我知道,试着向我的客户解释一下:(
  • 另外如果是用户自己加的话,不是放在前面吗:$122?

标签: jquery regex jquery-validate


【解决方案1】:

添加 \$?到正则表达式和 \s?\$? 的开头到正则表达式的末尾。这样做将接受:1,234 美元、1,234 美元和 1,234 美元:

$.validator.addMethod("money", function (value, element) { 返回 this.optional(element) || value.match(/^\$?(\d+(?:[\.\,]\d{2})?)\s?\$?$/); }, "请提供有效的美元金额");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2013-04-25
    相关资源
    最近更新 更多