首页 文章

蒙板输入插件和正则表达式(十进制数)

提问于
浏览
1

我有一个文本输入字段,我想在其中插入数字,然后是逗号,然后只是两个十进制数字 .

我试图通过jQuery,使用Masked Input Plugin来获取它,但它似乎无法工作 .

这就是我所拥有的:

<input type="text" name="cash" id="number"/>

<script type="text/javascript">
$.mask.definitions['p']='[0-9]+';
$.mask.definitions['d']='[0-9]{2}';
$("#number").mask("p,d");
<script>

但结果是只有一个数字的掩码,然后是逗号,然后是我无法写的东西(它不是数字,也不是字符)

_,_

如何在此插件中使用正则表达式?

3 回答

  • 6

    我会建议你使用jquery.maskMoney - https://github.com/plentz/jquery-maskmoney

    它很容易实现:

    <input type="text" id="cash"/>
    
    <script src="jquery.maskMoney.js"></script>
    <script>
        $("#cash").maskMoney("mask");
    </script>
    
  • 0

    试试这个,

    $("#number").mask("99,99");
    

    Working Demo

  • 1

    通过jQuery屏蔽输入的一个非常好的插件(在我看来)就是你正在使用的插件 . 并通过jQuery验证我找到了这个:http://plugins.jquery.com/validate

    它在DOC中描述得很差,但是下载中包含的演示你可以解决问题 . 它也有一些屏蔽功能,但不幸的是不如你现在使用的插件 .

    作为在屏蔽字段中输入的结果,您应该只获取在掩码中指定的值 . 这个插件不允许用户放置他们应该给出的其他字符 . 请记住,这个插件并不总是正确的表达式,你可以在pligun本身抛出错误:/然后由于JS错误你有一个搞砸的掩码,开始查看 .

相关问题