<input type="text" name="search_condition" onkeypress="getKeyDataByKey(this)">
function getKeyDataByKey(obj){
var iekey=event.keyCode;
var realkey=String.fromCharCode(event.keyCode);
if(event.keyCode==13){
getKeyData(obj.value)
}else{
return;
}
}我的代码是这样写的,文本框按回车键的时候执行getKeyDataByKey() 方法。  同样的IE7浏览器内执行,我的可以,其它同事的全部不行。  按回车键后根本没有走getKeyDataByKey() 方法,而是打开了一个新页面。这是怎么回事呢?  请高手指点

解决方案 »

  1.   

    <input type="text" name="search_condition" onkeydown="getKeyDataByKey(this)"> 
    function getKeyDataByKey(obj){ 
        var iekey=event.keyCode; 
        var realkey=String.fromCharCode(event.keyCode); 
        if(event.keyCode==13){ 
            getKeyData(obj.value);
            return false;
        }else{ 
            return;
        } 

      

  2.   

    return false是防止表单有submit按钮导致自动提交表单。
    回车键不会触发onkeypress事件。
      

  3.   

    问题原因是IE打开的页面如果只有一个TEXT框,回车默认是提交页面。
    解决方法是在页面再加一个隐藏TEXT框就行了