如何加入动态生成的对象(div)。
我的意思是$(document).ready(function()
启动时输出中没有的DIVS。
如果我这样做:
$('#click_me').click(function() {
$('#container').append('<div id="clicker2">can you click on me?</div>');
});
$('#clicker2').click(function() {
alert('hurray, it works');
});
clicker2无法正常工作
我该如何解决? 我打算动态创建多个。我也希望将Jquery操作分配给它们。
答案 0 :(得分:3)
.click()函数对以后添加的spans或div无效,您需要使用.live()
$("#clicker2").live("click", function(){
# do stuff to spans currently existing
# and those that will exist in the future
});
答案 1 :(得分:1)
在追加它之前创建div explicity并汇总其属性和事件。
var $div = $('<div />').append('can you click on me?').attr('id', 'clicker2').click(function() {
alert('hurray, it works');
});
$('#container').append($div);
答案 2 :(得分:0)
只需将点击装订放在第一个点击功能中:
$('#click_me').click(function()
{
$('#container').append('<div id="clicker2">can you click on me?</div>');
$('#clicker2').click(function(){ alert('hurray, it works'); });
});
如你所知,正在调用绑定,但没有“div#clicker2”绑定到第二个函数。
希望这有帮助。