jquery.click添加新元素没有绑定怎么解决?
2个回答
展开全部
可以使用事件委托,将子元素的事件委托给父元素监听。直接给父元素绑定事件监听,事件发生时,检测其子元素是否符合条件。符合则触发子元素的事件。这样动态添加的子元素也有效。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2016-01-28 · 知道合伙人互联网行家
关注
展开全部
HTML代码如下:
<form>
<div id=”newElement“></div>
<input type=”button” value=”生成新元素” id=”createElement” />
</form>
$(document).ready(function(){
$(”#createElement“).click(function(){
//统计当前页面中使有以newButton_开头的元素个数,生成ID
id = $(”[id^='newButton_']“).size()+1;
//生成新元素,追加到ID值为newElement的元素中
$(box.getButton(id)).appendTo($(”#newElement“));
//绑定click事件,其它change事件类似
$(”#newButton_”+id).click(function(){
box.getClick();
});
});
});
//生成一个对象盒子,面向对象思想,封装我们的函数,强烈推荐这种方法
var box = {};
box.getButton = function(id){
return ‘<input type=”button” value=”新按钮” id=”newButton_’+id+‘” /><br />’;
//返回任何你需要生成的新元素
}
box.getClick = function(){
alert(’事件生效啦!你点击了新按钮’);
//添加任何你需要的代码
}
<form>
<div id=”newElement“></div>
<input type=”button” value=”生成新元素” id=”createElement” />
</form>
$(document).ready(function(){
$(”#createElement“).click(function(){
//统计当前页面中使有以newButton_开头的元素个数,生成ID
id = $(”[id^='newButton_']“).size()+1;
//生成新元素,追加到ID值为newElement的元素中
$(box.getButton(id)).appendTo($(”#newElement“));
//绑定click事件,其它change事件类似
$(”#newButton_”+id).click(function(){
box.getClick();
});
});
});
//生成一个对象盒子,面向对象思想,封装我们的函数,强烈推荐这种方法
var box = {};
box.getButton = function(id){
return ‘<input type=”button” value=”新按钮” id=”newButton_’+id+‘” /><br />’;
//返回任何你需要生成的新元素
}
box.getClick = function(){
alert(’事件生效啦!你点击了新按钮’);
//添加任何你需要的代码
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询