(原文地址:http://kingstar.blog.51cto.com/8797655/1946217)
事故现场:
增加页面和修改页面是分离的两个jsp文件.
在页面加载时会用jquery去控制一些数据加载和一些逻辑.理论上来说不希望增加页面和修改页面
互相干扰.
单独拿增加模块测是正常的.加载修改页面后再使用增加页面就会发现增加页面功能不正常.
之后通过浏览器检查发现使用jquery通过类选择器选中的dom对象的确是不正常的.经排查发现增加
页面和修改页面是用到相同的class,而用jquery获取对象时正是用此class获取,以致增加页面功能不
能正常使用.
(现象:点击弹窗 dialog ,关闭实际没真正关闭,造成叠加div,出现很多层透明层)
处理方案:
修改其中一个页面与另外一个页面相同的类名以作区分,以防在增加页面js选择dom对象时获取到修改页面.
根本原因:
easy ui dialog 是通过主页面上的div 对象加载子页面实现的.在dialog加载时会把子页面dom对象加载到主页面上,dialog关闭时实际上是把div隐藏,而不是销毁dom对象,以致在关闭dialog后在主页面依然能获取到子页面上我们不希望出现的dom对象.也就是说在加载修改dialog之后我们在增加页面上依然可以获取到修改页面上的资源,同样,在加载增加dialog后在修改页面上也可以获取增加页面的资源,这只是一个加载顺序的问题.所以出现了一些不可思议的现象.以此谨记.
本文出自 “会飞的^(oo)^” 博客,请务必保留此出处http://kingstar.blog.51cto.com/8797655/1946217
easy ui dialog 关闭之后的怪异问题
标签:easy ui dialog jquery javascript
原文地址:http://kingstar.blog.51cto.com/8797655/1946217

本文分析了使用 EasyUI Dialog 在不同页面间加载时出现的DOM元素干扰问题及解决方法。由于增加和修改页面使用相同类名导致功能冲突,通过修改类名区分解决了该问题。
5257

被折叠的 条评论
为什么被折叠?



