2016-09-14 101 views
1

工作我的代碼jQuery的。點擊功能不是按鈕

$('#resetbtnB').click(function() { 
$('#bgfade').fadeIn('slow'); 
$('#webpopup').fadeIn('slow'); 
}); 

如果「resetbtnB」是諸如段落或圖像這樣的工作。但是,當'resetbtnB'是輸入按鈕時它不起作用。

E.g.

工程與

<p id="resetbtnB"> Reset </p> 

不與

<input type="submit" value="Reset" name="resetbtnB" id="resetbtnB"/> 

爲什麼這個代碼不輸入按鈕工作,我如何可以改變它的工作?

+0

既做這些元素是否同時存在? –

回答

2

因爲type =「submit」也觸發器提交事件,因爲它在窗體內部,因此它重載了click事件。 因此,無論嘗試刪除類型 「提交」,並把 「按鈕」 這樣寫

<input type="button" value="something" name="resetbtnB" id="resetbtnB"/> 

或者寫jQuery函數.submit

文檔:https://api.jquery.com/submit/

演示:https://jsbin.com/morisob/9/edit?html,js,output

+0

是的,非常感謝! – KrishCdbry

+0

我還添加了示例演示,如果它可以幫助您,它將會很棒。謝謝 – KrishCdbry

+0

除非該處理程序明確地取消了默認的提交行爲,否則添加'.submit()'處理程序將無濟於事。這也可以通過'type =「submit」'按鈕上的'.click()'處理程序完成。 (但是,是的,如果不需要提交,更改按鈕到'type =「按鈕」'是最好的解決方案。) – nnnnnn