我想在文本框中写入并检查是否为整数且少于16个数字。我有以下JavaScript代码。
<script type="text/javascript">
function doCheck(field) {
if (isNaN(document.getElementById(field).value)) {
alert('this is not a number');
document.getElementById(field).focus();
document.getElementById(field).select();
return false;
}
else {
return true;
}
}
</script>
<form method="post" action="" onsubmit="return doCheck('number');">
national id=<input type="text" name="nat" id="number">
<input type="submit" name="submit">
</form>
答案 0 :(得分:0)
您可以使用此
在文本框中找到字符串的长度function doCheck(field) {
var len = document.getElementById("number").val().length;
if(parse.Int(document.getElementById(field).value) && len < 16) {
return true;
}
else {
alert('your alert');
document.getElementById(field).focus();
document.getElementById(field).select();
return false;
}
}
答案 1 :(得分:0)
document.getElementById(field).value.length
答案 2 :(得分:0)
isNAN()
检查数字是否是任何类型的非法数字,而不仅仅是整数。所以你必须在那里使用其他东西,也许是正则表达式。
要获得字段的长度,您只需使用:
document.getElementById(field).value.length
答案 3 :(得分:0)
请确保将其解析为整数。
function doCheck(field) {
var input_value = document.getElementById(field).value;
if(isNaN(input_value) || parseInt(input_value,10) != input_value || input_value.length < 16) {
alert('this is not a number');
document.getElementById(field).focus();
document.getElementById(field).select();
return false;
}
else{
return true;
}
}