【问题标题】:Jquery input.mask with regex带有正则表达式的 Jquery input.mask
【发布时间】:2015-02-21 09:09:37
【问题描述】:

我想使用jquery input.mask plugin 实现简单的jquery 掩码插件,但是,我不能使它与正则表达式一起工作。我想要实现的是:

99:59:59

Fiddle

【问题讨论】:

    标签: javascript jquery input jquery-inputmask


    【解决方案1】:

    你可以这样做。

    $("#test").inputmask({
                mask: "99:59:59",
                definitions: {'5': {validator: "[0-5]"}}
        });
    

    验证器是一个表达式。告诉掩码字符串中的“5”只包含从 0 到 5 的数字字符。

    编辑:将 '-' 更改为 ':'

    【讨论】:

    • 感谢您的帮助。这正是我需要的:)
    【解决方案2】:

    你的意思是this:

    $('#test').inputmask('Regex', { 
        regex: "^[0-9]{2}:[0-5][0-9]:[0-5][0-9]$"
    });
    

    【讨论】:

    • 唯一的问题是正则表达式扩展不支持占位符,但是对于简单的掩码添加定义,就像@Buster 响应一样。按照您的建议使用正则表达式仅提供验证。
    【解决方案3】:

    使用

    <script src="../js/jquery.inputmask.bundle.js"></script>
    
     <asp:TextBox class="form-control" ID="trvl_amt" data-inputmask="'mask': '9{0,50}.9{0,2}'" data-mask placeholder="Travel Amount"  runat="server"></asp:TextBox>
    

    最多 50 个数字 + 2 个小数

    【讨论】:

    • 任何介于 50 个数字位和 2 个小数位之间的值
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-24
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多