JS面试题之01

面试题:
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 事件中进行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值