带有正则表达式的 Jquery input.mask

Posted

技术标签:

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

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

99:59:59

Fiddle

【问题讨论】:

【参考方案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': '90,50.90,2'" data-mask placeholder="Travel Amount"  runat="server"></asp:TextBox>

最多 50 个数字 + 2 个小数

【讨论】:

任何介于 50 个数字位和 2 个小数位之间的值

以上是关于带有正则表达式的 Jquery input.mask的主要内容,如果未能解决你的问题,请参考以下文章

jquery正则表达式验证是否带有小数是否中文名称组成是否全由8位数字组成电话码格式邮件地址

带有 jQ​​uery 的 Javascript 正则表达式包含正则表达式扩展

带有逗号分隔符的数字的正则表达式验证

使用 Jquery 使用正则表达式从 HTML 表中获取所有数据

jQuery 验证中的正则表达式 - 需要 5 个数字和 1 个字母的数字(字母不区分大小写)

jQuery1990到2008年的正则表达式怎么写?