3 回答
TA贡献1804条经验 获得超7个赞
动态创建按钮是因为,.live()如果使用jquery 1.7,则需要使用方法调用它们
但此方法已在新版本中弃用(您可以在此处查看所有弃用方法的列表)。如果要使用jquery 1.10或更高版本,则需要以这种方式调用按钮:
$(document).on('click', 'selector', function(){
// Your Code
});
例如
如果您的html是这样的
<div id="btn-list">
<div class="btn12">MyButton</div>
</div>
你可以这样写你的jQuery
$(document).on('click', '#btn-list .btn12', function(){
// Your Code
});
TA贡献1802条经验 获得超5个赞
我的猜测是,当您绑定按钮时,您创建的按钮尚未出现在页面上。绑定$.getJSON函数中的每个按钮,或使用动态绑定方法,例如:
$('body').on('click', 'button', function() {
...
});
注意,您可能不想在'body'标签上执行此操作,而是将按钮包装在另一个div或其他内容中并对其进行调用on。
TA贡献1815条经验 获得超6个赞
做到这一点的简单方法是在事件上使用:
$('body').on('click','#element',function(){
//somthing
});
但是我们可以说这不是最好的方法。我建议另一种方法是使用clone()方法,而不是使用动态html。例如,在您的文件中写一些html:
<div id='div1'></div>
现在,在脚本标签中对此div进行克隆,然后该div的所有属性也将带有新元素。例如:
var dynamicDiv = jQuery('#div1').clone(true);
现在,您可以在想要添加元素或更改其属性的任何位置使用它。现在,所有jQuery函数都可以与此元素一起使用
- 3 回答
- 0 关注
- 626 浏览
相关问题推荐
添加回答
举报