2011-06-27 51 views
1

我有以下代码。当用户点击[ENTER](键码= 13)时,表单将被重新提交。我想在这种情况下阻止回传。当我将键码设置为0时,它什么都不做。页面回发仍然存在。我怎样才能防止帖子回发?使用JavaScript防止回发

jQuery(this.Elements.TxtClientId).keypress(function(e) { 
     if (e.keyCode == 13) { 
      e.keyCode = 0; 
      alert("keycode: " + e.keyCode); 
      thisTemp._internalClientId = jQuery(thisTemp.Elements.TxtClientId).val(); 
      jQuery(thisTemp.Elements.DDLClientName).val(jQuery(thisTemp.Elements.TxtClientId).val()); 
      thisTemp.UpdateTestDropdown();    
     } 
    }); 

回答

4

尝试

if(e.keyCode === 13){ 
     e.preventDefault(); 
     // remainder of your code 
    } 

每一个问题: Prevent a button to submit on enter key

+0

是什么2比之间的差异3“=”标志? – MacGyver

+0

分别检查是否带有强制类型。 看到这个问题: http://stackoverflow.com/questions/523643/difference-between-and-in-javascript (在你的情况下,要么工作) –

1

您需要防止事件的默认处理程序。你正在使用jQuery,所以你可以使用内置preventDefault in jQuery