社区
JavaScript
帖子详情
使用innerHTML造成之前的绑定事件丢失
lawrendc
2011-12-29 06:04:14
Hi, 各位高手,最近遇到一个问题,之前使用javascript 对控件进行绑定的事件,但通过innerHMTL存储到一个变量里边去之后,再调用innerHTML进行显示时,发现之前绑定的所有事件都出现了丢失,请问怎么解决???
...全文
599
12
打赏
收藏
使用innerHTML造成之前的绑定事件丢失
Hi, 各位高手,最近遇到一个问题,之前使用javascript 对控件进行绑定的事件,但通过innerHMTL存储到一个变量里边去之后,再调用innerHTML进行显示时,发现之前绑定的所有事件都出现了丢失,请问怎么解决???
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
greency
2011-12-31
打赏
举报
回复
dom渲染和js不同步造成的,修改事件绑定试下
诺维斯基
2011-12-31
打赏
举报
回复
在你要加入innerHTML的地方再加一个div,给个id.
然后把这个innerHTML放在这个div中,
可以不?
不耐烦
2011-12-31
打赏
举报
回复
事件委派~ 很简单的
lawrendc
2011-12-31
打赏
举报
回复
谢谢,各位的解答
碧海情天-赵亮
2011-12-31
打赏
举报
回复
楼主说的是AJAX里返回JS事件的问题吧。这个以前在做的时候遇到过。是用下面的方法解决的:
在返回的<script>里加个属性 <script defer="defer" >...</script> 这样就行了。
如果不是这个问题,就是对INNERHTML赋值导致的事件没有重新绑定的问题,那就如上所说,赋值之后重新绑一下就是了。
licip
2011-12-30
打赏
举报
回复
+1[Quote=引用 2 楼 p2227 的回复:]
参考 jQuery.live() 的实现,把事件绑定到根元素。
[/Quote]
lawrendc
2011-12-30
打赏
举报
回复
其实我想实现的是在Ajax里如何让浏览器的前进后退可用,但参考了网上的解决方案之后,发现我直接生成的代码里链接的响应事件全部丢失,调试发现,使用innerHTML根本不能把attachEvent一并保留下来
lawrendc
2011-12-30
打赏
举报
回复
[Quote=引用 4 楼 hch126163 的回复:]
innerHTML 后重新绑定事件
或者直接把事件写入html 如 innerHTML="<div onlick='fun()'></div>";
[/Quote]
直接这样写的话 不能绑定多个事件吧 而且我还需要传参数进去的
hch126163
2011-12-30
打赏
举报
回复
innerHTML 后重新绑定事件
或者直接把事件写入html 如 innerHTML="<div onlick='fun()'></div>";
zell419
2011-12-29
打赏
举报
回复
[Quote=引用 2 楼 p2227 的回复:]
参考 jQuery.live() 的实现,把事件绑定到根元素。
[/Quote]
+1 或者更新完内容后 再次执行绑定事件 。
p2227
2011-12-29
打赏
举报
回复
参考 jQuery.live() 的实现,把事件绑定到根元素。
whdrs
2011-12-29
打赏
举报
回复
发代码
关于
innerHTML
后
丢失
动态
绑定
的EVENT问题解决方法
用
innerHTML
取出一段内容后再
innerHTML
回去,那么原来动态
绑定
的
事件
就会
丢失
,如: html: 代码如下: <body>’d1′>点击</div></body> script: 代码如下: document.getElementById(‘d1’).onclick=...
调用
innerHTML
之后onclick失效问题的解决方法
当你通过`
innerHTML
`替换元素的内容时,所有
之前
绑定
的
事件
处理程序(如`onclick`)都将
丢失
,因为新插入的HTML不会自动继承这些
事件
。这是因为`
innerHTML
`会销毁原有元素及其相关的
事件
监听器,并创建新的DOM结构。...
innerText和
innerHTML
一些问题分析
4. 内部的HTML结构改变后,原有子节点将被替换,因此
innerHTML
的修改可能导致
事件
处理程序的
丢失
,需要重新
绑定
。 在实际应用中,innerText常用于简单地更新文本内容,避免了DOM操作的繁琐。而
innerHTML
更适合于...
RadioButtonList
绑定
图片
4. **
事件
处理**:有两个按钮,一个是“
绑定
”按钮,另一个是“填充”按钮。当用户点击“
绑定
”按钮时,调用`Button1_Click`
事件
处理程序,将数据
绑定
到`RadioButtonList1`控件: ```csharp protected void Button...
用于节点操作的API,颠覆原生操作HTML DOM节点的API
对于动态增删改节点,原生DOM方法如`createElement`、`appendChild`和`insertBefore`虽然功能强大,但
使用
起来较为繁琐,尤其是在处理
事件
绑定
时。jQuery提供了一系列简洁的API,如`before()`, `after()`, `append()...
JavaScript
87,996
社区成员
224,693
社区内容
发帖
与我相关
我的任务
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
分享
社区描述
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章