jQuery動態創建的元素,是不能直接使用click等事件觸發的,比如:
//jquery 動態創建addfujian鏈接
$("#reup").click(function()
{
$(this).after("<a id='addfujian' href='JavaScript:void(0)'>添加附件</a>");
});
如果對addfujian進行點擊的話,下面的程序是不對的:
$("#addfujian").click(function() {
alert("click me!");
});
要達到對動態創建的元素添加事件的目的,有兩種方法:
1、使用live
live() 方法爲被選元素附加一個或多個事件處理程序,並規定當這些事件發生時運行的函數。
通過 live() 方法附加的事件處理程序適用於匹配選擇器的當前及未來的元素(比如由腳本創建的新元素)。
所以:
$("#addfujian").live('click',function() {
alert("click me!");
});
2、使用javascript:
//js 函數
function clickme()
{
alert("click me");
}
//jquery 動態創建addfujian鏈接
$("#reup").click(function()
{
$(this).after("<a id='addfujian' href='javascript:void(0)' οnclick='clickme()'>添加附件</a>");
});