js在输入框屏蔽按键,只能键入数字的示例代码

复制代码 代码如下:

  <script language="javascript">

  function GetInput(){//屏蔽非数字和非退格符

  var k = event.keyCode;   //48-57是大键盘的数字键,96-105是小键盘的数字键,8是退格符←

  if ((k <= 57 && k >= 48) || (k <= 105 && k >= 96) || (k== 8)){

  return true;

  } else {

  return false;

  }

  }

  function Set(obj){

  //即时处理输入框的内容,比如进行某些运算

  }

  </script>

  <input type='text' value='1' onkeydown='return GetInput()' onkeyup='Set(this)' >

  技术要领:onkeydown事件先于onkeyup事件被触发;当onkeydown事件return false时onkeyup事件将不会被触发,并且输入框中也不会有用户刚按下的这个字符,从而实现了屏蔽某些字符的目的。了解了这一事件触发原理,思想上应当有所延伸(比如鼠标的几个事件也会是这样的机制)...