WEB程序开发中,对于使用jQuery生成的新元素或新添加的元素,经常需要用jQuery对新建的元素绑定 click事件。由于默认的 click事件是不起作用的,必须给新生成的元素进行click事件绑定。这几天由于项目需要,通过使用jQuery生成新元素,同时给新元素绑定 click事件和change事件,经过项目实践,我总结一下相关知识,通过使用最简单的方法,实现jQuery绑定click事件,供参考。
<script src="jquery.min.js" type="text/javascript"></script>
<!--jquery.min.js文件下载http://download.csdn.net/source/3310749-->
<form>
<div id="newElement"></div>
<input type="button" value="生成新元素" id="createElement" />
</form>
<script>
$(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('事件生效啦!你点击了新按钮');
//添加任何你需要的代码
}
</script>
第一步:生成新元素;
如:$(box.getButton(id)).appendTo($(”#newElement“));
第二步:对需要绑定事件的新元素进行click事件绑定,注意:新元素的ID是唯一的,这样才能正确绑定;
如:$(”#newButton_”+id).click(function(){ box.getClick(); });
第三步:绑定什么click事件,事件的具体代码;
如:box.getClick = function(){ alert(’事件生效啦!你点击了新按钮’); }