0

我有檢測單選按鈕更改,然後調用按鈕上的方法的代碼。它在現有的按鈕上工作正常,但是當我通過ajax添加新的單選按鈕時,它不適用於它們。我如何才能檢測新單選按鈕上的更改?如何檢測新的單選按鈕上的更改?

這是我的CoffeeScript代碼:

jQuery -> 
    $(".radio-button:radio").change -> 
     doSomething(this) 

,看起來像這樣在JS:

jQuery(function() { 
    return $(".radio-button:radio").change(function() { 
    return doSomething(this); 
    }); 
}); 

回答

1

對於動態創建的元素,你需要用做事件委派.on()

$(document).on('change','.radio-button:radio', function() { 
    //Your code here 
}); 

而不是(對於靜態元素)

$(".radio-button:radio").change(function() { 
    //Your code 
}); 

注意:您需要一個靜態的家長選擇$(parent)這是目前在DOM &使用有更好的表現,以取代$(document)

+0

謝謝。頁面加載時不存在較低的父級,所以我想我會堅持使用文檔。 –

相關問題