JS文本框拒绝非数字输入

<html>

<head>

  <script>

  function hen(evt){

   evt = window.event||evt;

   var code;

if (document.all){

code = evt.keyCode;

if( code&&(code <48 ||code >57)){

evt.returnValue = false;//在IE中 预防默认事件的发生 需要将事件对象的returnValue属性设置为false;

}

}

else{

code = evt.charCode;

if(code &&(code <48 ||code >57)){

evt.preventDefault();

}

}

  }

  </script>

</head>

<body>

<form>

只能输入数字<input type="text"  id="a" οnkeypress="hen(event)"><p>

可以输入任何字符<input type="text"  id="b">

<p>

<div style="width:600px;height:190px;border:1px solid blue;padding:5px;font-size:12px;">

keyCode和charCode的区别:<p>

IE里没有charCode属性 ,它的含义是这样的:<br/>

对于keypress事件,表示按下按钮的Unicode字符;对于keydown/keyup事件,表示按下按钮的数字代号。<br/>

FF里2个属性都有 charCode表示 按下按钮的Unicode值,keyCode表示按下按钮的数字代号。<br/><p>

可见 在keypress事件时,IE里的keyCode==FF里的charCode<br/>

keydown/keyup事件时,IE里的keyCode==FF里的keyCode<br/>

</div>

</body>

</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值