我正在尝试将字符与正则表达式匹配,以仅允许正数和小数值。下面的正则表达式工作正常,但我可以填充两个小数点。
的jQuery
$(".qtyValidation").keypress(function (e) {
if (String.fromCharCode(e.keyCode).match(/[^0-9\.]/g)) return false;
});
输入字段
<input class="mt-my-prices-product-quantity qtyValidation" min="0" type="number" value="1">
这是令人厌恶的否定数字,但它允许这样的1..2或1.56.45。
正则表达式只允许带一个小数点。
答案 0 :(得分:1)
试试这个:
if (String.fromCharCode(e.keyCode).match(/^[0-9]+(\.[0-9]{1,2})?$/g)) return false;
([0-9] {1,2})?只允许两位十进制
([0-9] +)?允许任意数量的小数