按“输入”键IE7不会阻止默认操作

时间:2012-07-14 02:16:41

标签: javascript jquery javascript-events

我有一个包含

的表单
<button class="submit">Submit</button>

和jQuery代码

$(".submit").click(function(e){
   var evt = e || window.event; // IE compatibility
   if(evt.preventDefault){  
     evt.preventDefault();  
   }else{  
      evt.returnValue = false;  
    evt.cancelBubble=true;  
  }
 //....ajax call 
});

所以,我想知道我在IE7中做错了什么,当我输入搜索词然后按回车键进入我的主页(action in form =“/”)。为什么它不会阻止IE7进行默认操作。

  • 是因为我使用按钮标记
  • 我也尝试过旧的方式onsubmit调用一些函数,但它失败了
  • 或者是因为ajax电话?

附加说明:

  • 我有身体和身体内部我有iframe,在iframe我有形式。所以,我想知道是因为iframe。

由于 病毒

1 个答案:

答案 0 :(得分:5)

您正在阻止按钮标记的默认操作,这不会影响输入触发的事件,还要注意jQuery事件对象preventDefault()方法是跨浏览器的,请尝试以下操作:

$('input').on('keyup', function(e){
  if (e.which == 13) {
     e.preventDefault();
  }
})