2012-07-04 31 views
1

我有一個帶有按鈕的html頁面,我爲其分配了事件偵聽器。只要單擊其中一個按鈕,頁面就會回到原始狀態,就好像瀏覽器已關閉並再次打開一樣。因此,如果我有輸入了一些信息的文本字段,只要點擊一個按鈕,它們就會被清除,即使它的事件監聽器什麼都不做。html-javascript:無論何時發生事件,刷新頁面

同樣,如果我將這個事件監聽器包含到html中,那麼只要點擊一個按鈕,就會調用pageLoaded()函數。

爲什麼會發生這種情況,我該如何防止它發生?

回答

1

假設您使用的是提交按鈕,除非您取消默認操作,否則這些按鈕將提交它們所在的表單。

eventObject.preventDefault(); 

參見the documentation

1

也許您的點擊事件偵聽器已添加到表單中的鏈接或按鈕。如果是這樣,您可以添加return false a監聽器的結尾,以防止執行默認行爲。

var link = $("#mybutton"); 
link.click(function() { 
    alert("clicked"); 
    return false; 
}); 
0

將按鈕類型設置爲「按鈕」將解決此問題。默認類型是「提交」,正如其他人所說的那樣,將提交表單。

<button type="button">Button</button> 
相關問題