我正在使用cordova制作移动应用。因此我的代码需要与android和ios浏览器兼容
我需要将输入的长度限制为3位数,但是我输入的任何非数字字符都不起作用。
这是我的输入
<input id="age" type="number">
这是我的js
$("#age").bind("keyup", function (e) {
var ageSelector = $('#age');
if (ageSelector.val().length > 3) {
ageSelector.val(ageSelector.val().substr(0, 3));
}
});
如何在输入中获得真正的价值?或者更好如何防止用户输入所有非数字字符?
答案 0 :(得分:0)
使用isNaN()
如果不是数字则返回true,您也可以使用maxlength
属性
<input id="age" type="number" maxlength="3">
$("#age").bind("keyup", function (e) {
var ageSelector = $('#age');
var val=ageSelector.val();
if(isNaN(parseInt(val)))
ageSelector.val(val.substr(0, val.length-1));
if (val.length > 3) {
ageSelector.val(val.substr(0, 3));
}
});