3

我有一个表格,其中包含

<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 中做错了什么,当我输入搜索词并按 Enter 键时,它会转到我的主页(表单中的操作 =“/”)。为什么它不会阻止 IE7 进入默认操作。

  • 是不是因为我使用的是按钮标签
  • 我也尝试过在表单 onsubmit 中调用一些函数的旧方法,但它失败了
  • 还是因为ajax调用?

附加说明:

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

谢谢病毒

4

1 回答 1

5

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

$('input').on('keyup', function(e){
  if (e.which == 13) {
     e.preventDefault();
  }
})
于 2012-07-14T02:29:42.437 回答