0
好吧,我看了很多與我的看法不一樣的例子。我只想做一些事情(現在,只是一個警報),當一個複選框更改(單擊或任何其他)。我的代碼: '複選框事件'不會觸發
$(document).ready( function() { $('input:checkbox').bind('change', function() { var id = $(this).attr("id").substring(5); var skill = $("#skill" + id).val(); alert("you processed skill number " + skill); }) }) ; // end doc ready一件事,可能是與別人不同的是,我動態地創建這些複選框以包括這樣的另一個腳本(不帶「腳本」標籤在這裏):
<pre>src="jscript/skills_boxes.js" type="text/javascript" </pre> <br>
目前上方。也就是說我的'問題',但我已經下面了,我的東西仍然無法正常工作。這裏有什麼時機問題嗎?我會很感激任何幫助。謝謝。
解釋爲OP ...當你「綁定」它只會綁定到當前在DOM中的元素的事件。因此,在此之後添加的任何內容都不會包含在內。 '.on'函數實際上綁定到一個公共父(在本例中爲'body'元素),並監視從子元素中冒出的事件,而不管它們何時被添加。只要事件通過DOM向上傳播,就應該抓住它。 (由於只有一個綁定,所以這也提供了性能改進,而不是每個匹配元素的綁定。) – David
感謝您的建議。我將「$('body')。」on「行復制到我的代碼中,但是當我點擊這些複選框時,仍然沒有發生事件。我正在Firebug中查看它,並且當我點擊**時,它不會顯示在該行。它會在頁面加載時使它在那裏。 – McAuley
刪除更改事件的內容並執行提醒,也許您遇到阻止其繼續執行的錯誤。 – tmcc