2010-03-11 11 views
1

我有以下代碼(從別人繼承):「猜測」獲取OnClick事件被按下時,輸入(IE)

<div class="feedback">&nbsp;</div> 
    <form onsubmit="return false" autocomplete="off"> 
     Enter your guess: 
     <input type="text" size="48" id="guessedword"/> 
     <input type="submit" value="Guess!" id="guessbutton"/> 
    </form> 
</div> 

現在,我想要做的事時,按鈕被按下,但我不希望頁面改變(即我不想提交表單)。這就是爲什麼onsubmit被映射到"return false"。我也有以下jQuery:

$("#guessbutton").bind("click", onGuess); 

事情是,這在Firefox和Chrome中很好用。唯一的問題是IE。猜測按鈕正常工作,唯一的問題是,在text字段中按Enter時,未按下按鈕,或者至少不會調用onClick行爲。在Firefox和Chrome中,它效果很好。

有什麼辦法讓我的工作方式符合我的要求嗎?還是我以錯誤的方式討論這件事? (我是HTML新手,所以我甚至不確定這是做事的正確方法)。

感謝

回答

2

你可以寫:

<form onsubmit="onGuesS(); return false;" autocomplete="off"> 

這不會重定向回車的onclick,但在所有三種瀏覽器,輸入相當於提交表單..所以你所寫的UR登錄在onSubmit並返回false,表示頁面不會再次提交。

+0

工作完美:)謝謝。 – 2010-03-11 10:41:19

0

嘗試使用onkeypress()事件並處理回車鍵。不要使用type =「submit」。改爲使用type =「button」。如果你不提交表單到服務器不要使用它。從代碼中刪除表單標籤。

<div class="feedback">&nbsp;</div> 
     Enter your guess: 
     <input type="text" size="48" id="guessedword"/> 
     <input type="button" value="Guess!" id="guessbutton"/> 
</div> 

document.onkeypress = function(){ 
    //your handling code here. keyKode of Enter key = 13 
}