【问题标题】:Mask does not work correct way at RobinHerbots inputmask plugin掩码在 RobinHerbots inputmask 插件中无法正确工作
【发布时间】:2015-01-15 14:29:12
【问题描述】:

我有这个输入掩码FIDDLE:

<input data-inputmask="'mask':'[[[[[9]9]9].9]9]9,--€','greedy':false,'numericInput':true" />

但我不希望千位分隔符(点)在用户输入第 4 位之前可见。所以,目前的输入是:

 1,--€
 14,--€
 .145,--€
 1.450,--€

我需要的是合乎逻辑的:

 1,--€
 14,--€
 145,--€
 1.450,--€

我尝试过的其他掩码根本不允许第 4 位数字:

 [[[[[9]9]9.]9]9]9,--€

目前我使用简单的掩码:

 999.999,--€

...但我不希望看到完整的面具___.___,--€

有没有办法用current library 做到这一点?另外,第一个数字不应该为零,也许正则表达式是更好的解决方案。

【问题讨论】:

    标签: jquery regex jquery-inputmask


    【解决方案1】:

    您最好的选择可能是覆盖“数字”别名,如下所示:

    <html>
    : <!-- includes etc. -->
    <script>
    $(document).ready(function(){
        $("#price").inputmask();
    });
    </script>
    </head>
    <body>
    Price: <input id="price" data-inputmask="'alias': 'numeric', 'groupSeparator': '.', 'autoGroup': true, 'digits': 2, 'digitsOptional': true, 'radixPoint': ',', 'suffix': ' €', 'placeholder': '0', 'min': '0', 'max': '99999'"  />
    </body>
    </html>
    

    这些选项应该是不言自明的,您可以根据需要进行修改。这与您的问题不同,因为美分是可选的(并不总是排除在外)。您可能需要阅读一些代码,尤其是 jquery.inputmask.numeric.extensions.js,您可能会从中学到一些东西。还有一个“整数”别名,它可能适用于您想要的(调整后缀),但它似乎有一个错误。

    【讨论】:

    • 后来我发现inputmask插件在移动设备上有bug,我不得不改变它。目前我正在使用maskmoney plugin。感谢您注册只是为了回答我的问题。
    猜你喜欢
    • 1970-01-01
    • 2018-06-01
    • 1970-01-01
    • 2018-10-10
    • 1970-01-01
    • 2023-02-03
    • 1970-01-01
    • 2015-10-26
    • 2021-01-16
    相关资源
    最近更新 更多