2013-04-04 79 views
-5

我有一個jQuery的.change()事件,以識別何時選擇/更改單選按鈕。jQuery .change()不發射?

這裏的單選按鈕代碼:

<input type="radio" name="joint" value="0" class="who" data-entity="me"/> 
<input type="radio" name="joint" value="1" class="who" data-entity="me and partner"/> 

我的JavaScript來檢測的變化是這樣的:

$('input[name=joint]').bind('change', function(){ 
    alert('changed'); 
    $('.jointWho').html('Cover for '+$('option:selected',this).data('entity')); 
}); 

然而,當我選擇/更改的單選按鈕時,即使不火,而我沒有看到警報。

任何想法?

+2

如果**下次在**之前嘗試jsfiddle(http://jsfiddle.net/CSa2W/)會怎麼樣? – zerkms 2013-04-04 20:43:13

+1

..它很明顯的工作 – jackcogdill 2013-04-04 20:43:55

+2

你的代碼是否在一個文件準備好的呼叫,或任何有載呼叫? – Daedalus 2013-04-04 20:45:48

回答

0

您的問題可能是您缺少document.ready調用。如果你在加載HTML之前嘗試綁定東西,它們似乎會經過,但實際上沒有進行綁定(因爲如果HTML未加載,則不存在任何元素)。所以試試這個,像這樣包裝你的綁定。

$(document).ready(function() { 
    // Your code 
}) 

這將確保HTML完全加載和您的綁定得到在正確的時間上。

0

它應該在onLoad事件中。