2012-03-03 45 views

回答

4

您可以使用.preventDefault()阻止事件的默认行为,在这种情况下阻止输入到输入端的一个。就像这样:

$(document).ready(function(){ 
    $('#test').on('keypress', function(e){    
     if(e.which == 97) { 
     e.preventDefault();    
     this.value = ""; 
     }   
    }) 
})​; 

更新您的提琴:http://jsfiddle.net/hvx6y/1/

+0

是啊!确实,我有点被封锁,没有看到简单的解决方案。谢谢你,Christofer。 – 2012-03-04 08:50:48

0

使用setTimeout(为1的参数或0)来执行的,用于清除输入的代码一点点。这是有效的,因为setTimeout中的代码将在当前按键处理完成后执行。

您也可以像Christofer Eliasson指出的那样阻止当前事件结束处理。

+0

是的,非常好!谢谢您的意见。 – 2012-03-04 08:51:52