3 回答

TA貢獻1804條經(jīng)驗 獲得超7個贊
動態(tài)創(chuàng)建按鈕是因為,.live()如果使用jquery 1.7,則需要使用方法調(diào)用它們
但此方法已在新版本中棄用(您可以在此處查看所有棄用方法的列表)。如果要使用jquery 1.10或更高版本,則需要以這種方式調(diào)用按鈕:
$(document).on('click', 'selector', function(){
// Your Code
});
例如
如果您的html是這樣的
<div id="btn-list">
<div class="btn12">MyButton</div>
</div>
你可以這樣寫你的jQuery
$(document).on('click', '#btn-list .btn12', function(){
// Your Code
});

TA貢獻1802條經(jīng)驗 獲得超5個贊
我的猜測是,當您綁定按鈕時,您創(chuàng)建的按鈕尚未出現(xiàn)在頁面上。綁定$.getJSON函數(shù)中的每個按鈕,或使用動態(tài)綁定方法,例如:
$('body').on('click', 'button', function() {
...
});
注意,您可能不想在'body'標簽上執(zhí)行此操作,而是將按鈕包裝在另一個div或其他內(nèi)容中并對其進行調(diào)用on。

TA貢獻1815條經(jīng)驗 獲得超6個贊
做到這一點的簡單方法是在事件上使用:
$('body').on('click','#element',function(){
//somthing
});
但是我們可以說這不是最好的方法。我建議另一種方法是使用clone()方法,而不是使用動態(tài)html。例如,在您的文件中寫一些html:
<div id='div1'></div>
現(xiàn)在,在腳本標簽中對此div進行克隆,然后該div的所有屬性也將帶有新元素。例如:
var dynamicDiv = jQuery('#div1').clone(true);
現(xiàn)在,您可以在想要添加元素或更改其屬性的任何位置使用它?,F(xiàn)在,所有jQuery函數(shù)都可以與此元素一起使用
添加回答
舉報