4

看来,即使使用当前的验证插件,如果您想使用 min 进行验证,您也不能在值中使用逗号。我在 github 上找到了几个月前(11 个月)提交的补丁来修改源 .js 文件,但它仍然没有发布。

因此,我没有修改我的源 .js 文件,而是试图弄清楚如何在验证之前替换逗号。

我试过这样的事情:

$("#amount").blur(function(){
    var val = $(this).val().replace(/\,/g,'');
    $(this).val( val ); 
});
$("#transferForm").validate({
    .......
});

但它首先运行 validate,因为 min 失败,然后替换该值。我不一定希望它验证失败并告诉用户删除逗号 - 我只是希望它在运行 min 规则之前删除逗号。

4

2 回答 2

5

甚至不要让他们输入逗号

$("#amount").keyup(function(){
    var val = $(this).val().replace(/\,/g,'');
    $(this).val( val ); 
});

演示:http: //jsfiddle.net/calder12/tdxKv/

于 2013-03-14T17:18:16.613 回答
0

试试这个http://jsfiddle.net/MWjZr/

$(function(){
  $("input[id=sometexboxid]").each(function(){
      this.value=this.value.replace(/,/g, "");
  }).on('keyup', function(){
      this.value=this.value.replace(/,/g, "");
  })
});

更多解释请参考http://davidwalsh.name/javascript-replace文章。

于 2013-03-14T17:23:22.903 回答