Money的jQuery自定义验证查询

The*_*odd 8 regex jquery

我有这个用于接受钱的文本框的自定义验证:

//custom validator for money fields
$.validator.addMethod("money", function (value, element) {
  return this.optional(element) || value.match(/^\$?\d+(\.(\d{2}))?$/);
}, "Please provide a valid dollar amount (up to 2 decimal places) and do not include a dollar sign.");
Run Code Online (Sandbox Code Playgroud)

它似乎有效,但我不希望允许美元符号.我是否将其更改为:

//custom validator for money fields
$.validator.addMethod("money", function (value, element) {
   return this.optional(element) || value.match(/^\?\d+(\.(\d{2}))?/);
}, "Please provide a valid dollar amount (up to 2 decimal places) and do not include a dollar sign.");
Run Code Online (Sandbox Code Playgroud)

或者我应该在其他地方剥离美元符号而不是打扰用户这么小的问题?如果这是真的,我应该在哪里做?

感谢您回答这样一个n00b问题.

Jas*_*son 3

只需在验证之前删除该值即可。这很简单:

var str = [your value];
str = str.replace('$','');
Run Code Online (Sandbox Code Playgroud)