方法1:页面生成时DOM树已经确定,新添加到页面的元素不会被jQuery事件绑定到,或者说是监听到,这时要对所调用的事件重新击活一下就要用到
livequery插件
导入js文件:
<script src='http://code.jquery.com/jquery.js'></script> <script src='jquery.livequery.js'></script>
?
var boo = true; //判断点击的button是否为第一个; $(".insertr").click( function () { $("input[type='button']:last").after('<br /><input type="button" value="添加按钮" class="insertr" />'); boo = false; }); //注:对于本例,不要把本段代码放在$(document).ready(function(){});中,否则会出错
?
$(".insertr").livequery('click',function(){ //击活click事件对新的DOM树进行监听 if(boo){ $("input[type='button']:last").after('<br /><input type="button" value="添加按钮" class="insertr" />'); } });
?
<input type='button' value='添加按钮' class='insertr' />
?
livequery官方下载
本地下载
?
方法2:以上代码中的livequery都可直接换成live,live()函数是jQuery核心库1.3以后的加入的。具有livequery插件功能。