为什么ajax加载出来的html,无法用选择器绑定事件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么ajax加载出来的html,无法用选择器绑定事件?相关的知识,希望对你有一定的参考价值。
问题:使用Ajax异步请求页面,正常显示,但是页面上的按钮,无法添加点击事件
分析:Ajax异步加载的,整个页面加载完成后,找不到你异步加载的DIV或者事件。
*解决:使用 delegate() 方法的事件处理程序**
delegate() 方法为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
使用 delegate() 方法的事件处理程序适用于当前或未来的元素(意思是:可以为生成的页面添加事件)。
使用:向未来的(新生成的)元素添加事件处理程序
</script>
$(document).ready(function(){
$("div").delegate("p","click",function(){
$(this).slideToggle();
});
});
</script>
以上是关于为什么ajax加载出来的html,无法用选择器绑定事件?的主要内容,如果未能解决你的问题,请参考以下文章
在 IE 的 jQuery Ajax 成功函数中无法识别选择器
如何使用 ajax 调用将 jquery 数据表加载到 div 中