允许用户在小数点前最多输入4个字符,在小数点后输入2个数字

时间:2017-03-22 20:24:00

标签: javascript jquery jquery-ui javascript-events

我有一个带小数点固定的文本框 - “0.00”。

当用户从上一个文本框中选中时,它应该出现在此文本框的开头,用户可以在十进制之前输入最多4个字符,在十进制之后他只能输入字符。

我试过以下的事情 -

1)尝试使用数据注释在MVC中使用正则表达式 - ^ \ d {2}(。\ d {2})?$ 但不能正常工作,因为它不限制页面中的字符。所以我想去Javascript解决方案。

2)在JS中我使用过 -

在Key up事件中,我使用了以下代码 -

if (loadDecimal > 0 && loadAmount.length > loadDecimal + 1) {
        $(this).val($(this).val().toString().substring(0, loadDecimal + 3));
    }

以奇怪的方式行动。它允许我输入第一个字符,然后控件转到最后,然后它允许我在2位小数后添加字符。但是,输入数字后将删除它。

如果有人对此有任何解决方案,请告诉我。

提前致谢!!

1 个答案:

答案 0 :(得分:0)

您可以在常规min上使用原生maxstep<input type="number">属性:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="numeric-input" type="number" min="0" max="9999" step="0.01">