【发布时间】:2018-01-26 00:07:04
【问题描述】:
我在验证一个包含最多 11 位数字(包括十进制数和小数点后两位数(如果有))的文本框时遇到问题。关于 jquery 中的 keyup。
我使用这个正则表达式 /^(\d+)?([.]?\d{0,2})?$/g 来验证数字和带两位数的小数,但我不知道如何将最大位数限制为 11。
我已将输入 type number 与 maxlength 一起使用,但它不起作用。
HTML
<input type="number" />
jQuery
$('input').keyup(function() {
var $th = $(this);
$th.val( $th.val().match(/^(\d+)?([.]?\d{0,2})?$/g,
function(str) {
return ''; }
) );
});
这样的价值观
64123841.33 123456789.1、12345678901、 1.22,
请帮帮我。
【问题讨论】:
-
你能举一些有效和无效值的例子吗?例如,
12345678901.11是否有效? -
共11位或小数点前11位
-
@RoryMcCrossan 喜欢 123456789.1、12345678901、1.22
-
因此,您想设置总文本长度的限制。为什么不使用
maxlength="11"?
标签: jquery regex validation input