面试题:
Html input写个onkeyup事件处理,要求输入QQ号码有效,具体为:大于1000,小于15位的数字
<html>
<!-- Html input写个onkeyup事件处理,要求输入QQ号码有效,具体为:大于1000,小于15位的数字。 -->
<head>
<script>
function test()
{
var obj = document.getElementById('qqnum');
if(!obj.value)
{
alert("QQ number cannot be empty");
return false;
}
if( isNaN(obj.value) )
{
alert("QQ number should be a number");
return false;
}
if( obj.value <= 1000 || obj.value > 999999999999999 )
{
alert("QQ号码应大于1000,小于15位的数字");
}
}
function aaa()
{
var obj = document.getElementById('qqnum');
if(!obj.value)
{
alert("QQ number cannot be empty");
return false;
}
//alert(obj.value.substr(obj.value.length-1,1));
var re = /[0-9]/;
if(!re.test(obj.value.substr(obj.value.length-1,1)))
{
alert('Digit only');
return false;
}
}
</script>
</head>
<body>
<form>
<input type="text" id="qqnum" onkeyup='aaa()'/> <!-- onkeyup='test()' -->
<input type="submit" onclick="test()"/>
</form>
</body>
</html>
注意: 因为在 input 元素的 onkeyup 事件,每输入一个字符都会被触发,个人觉得
onkeyup 事件中,只要保证最近输入的一个字符是数字即可。
整体的检测应该在 submit 的 onclick 事件中进行。