2015-05-31 67 views
2

爲什麼我不能在「on」處理程序中將變量寫入選擇器。怎麼會是對的?內容可以在ajax請求後,所以我需要寫$(文檔)而不是$(按鈕)!?jquery查找後點擊元素

+1

我認爲on()背後的基本思想是將動態元素上的事件綁定......爲什麼你想在之前找到它。 –

+2

因爲這就是'.on()'的工作原理。如果你傳遞一個選擇器作爲它的第二個參數,它必須是一個字符串。你的'buttons'變量將引用一個jQuery對象,該對象包含在線運行時存在於'.sector' *中的所有按鈕元素。* - 它不包括在ajax請求之後添加的未來元素。 – nnnnnn

+0

狡猾但'var buttons ='.sector button';'。你最好的選擇是'$(document).on('click','.sector button',function(){...})' – lshettyl

回答

1

您可以將它綁定到您要通過ajax更新內容的div父級。

$('#ParentDivOfUpdateId').on('click', '.sector button', function() { 
    // here ParentDivOfUpdateId is Id of div which is parent to your dynamic content 
    //... 
})