为什么ajax加载出来的html,无法用选择器绑定事件,连行内的弹框都不能运行?

需要ajax动态获取数据添加到已经加载完成的html里面时,总是出错。先调用remove()或empty()把元素的子节点全部清空,然后调用append()函数追加节点。... 需要ajax动态获取数据添加到已经加载完成的html里面时,总是出错。

先调用remove()或empty()把元素的子节点全部清空,然后调用append()函数追加节点。这个节点我已经在行内写了onclick事件了,而且只是弹出一个窗口, 我通过控制台观察,发现已经追加成功,而且语法上没有任何错误。但,就是不能弹框。

我也是彻底不知道怎么办了,网上说的方法里面这是第一种,也是最行之有效的,可是这都运行不了,请问为什么!

主要的代码是:
经过反复调试 ,如果删除掉:$("#u2 li").remove() ,就是删除子元素的那行代码,就能弹框了,这函数是怎么回事,难道是 jquery 的 bug ?
展开
 我来答
匿名用户
推荐于2016-03-15
展开全部
用事件代理啊。
jq里面有live、on几个事件都可以。
$('#u2').on('click','a',function(){
alert('runing')

})
更多追问追答
追问
试了bind,live都没有效。还有什么办法么?
追答
不可能没有效果啊。
或者你可以试试在append之后做一次事件操作看看
$('#u2').append(str)
$('#u2').find('a').click(function(){})

如果这样还是不行,那就是代码有问题了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式