[英]Unexpected submit on “submit” button click
如果我將“提交”按鈕設為活動狀態(帶有“ Tab”按鈕),然后按Enter ,則按鍵處理程序將觸發,並在按鈕上生成click事件。 但是OnClick
和Submit處理程序將不會觸發。 它只會以靜默方式發布表單。 為什么?
<script src="../js/jquery.js" type="text/javascript"></script>
<script type="application/javascript">
$().ready(function(){
$("#f1").keypress(function(event) {
if (event.keyCode==13){
var currentInputId = $(event)[0].target.id;
var currentInput = $('#'+currentInputId);
currentInput.click();
return false;
}
});
$("#f1").submit(function(){
alert ("huy")
})
})
</script>
<form name="f1" id="f1" method="POST">
<input type="text">
<input type="submit" onclick="return false;" id="submit">
</form>
在我的機器上,您的情況發生了什么(在提交按鈕上移動輸入,然后按Enter):
keypress
處理程序運行並調用click
該按鈕 onclick
返回false
如果我刪除onclick="return false;"
, 然后:
keypress
處理程序運行並調用click
該按鈕 submit
處理程序 其他一些測試表明*不會調用* submit
處理程序,因為您從keypress
處理程序返回false
。
因此,要解決此問題:
onclick="return false;"
從按鈕 keypress
處理程序中刪除return false
這將顯示警報,然后按您期望的方式提交表單。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.