【问题标题】:Currency textbox masking货币文本框屏蔽
【发布时间】:2017-01-03 18:39:51
【问题描述】:

我想为我的货币文本框定义数据屏蔽,所以我定义了一个 bo-money 类并编写了一个如下所示的函数

  $('.bo-money').keyup(function (arg) {
        this.value = bo_Controller.commafy(this.value);});
-----------------------------------------------------------------------
  commafy: function (num) {
    num = num.toString().replace(/\,/g, '') + '';
    return num.replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1,");

现在这些值将用逗号保存在 dB 处,如果没有这种格式而只有数字,我如何保存它们?

【问题讨论】:

    标签: javascript jquery maskedtextbox


    【解决方案1】:

    如果您想保存个数字,您可以将您的正则表达式更改为

    num.replace(/[^\d]/g, "");
    

    【讨论】:

    • 如果这回答了您的问题并且正则表达式是问题所在,那么您可能会发现像 regex101.com 这样的网站很有帮助。
    • 所以我应该改变'code' num = num.toString().replace(/\,/g, '') + '';用你的代码?
    • 是的,如果目标是从字符串中删除任何非数字,您可以更改 num.toString().replace(/\,/g, '') + '';到 num.toString().replace(/[^\d]/g, ''); + '';
    • 不,我想要它们,但我想在没有非数字的情况下发布它们,但显示它们
    猜你喜欢
    • 1970-01-01
    • 2015-06-16
    • 2015-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-04
    相关资源
    最近更新 更多