首页 > 编程 > JSP > 正文

iframe中访问easyu,i的jsp页面时脚本的正确写法

2019-11-02 14:30:44
字体:
来源:转载
供稿:网友

   很多初学Easyui的人都会遇到这样的问题,那就是在页面中采用ifra

天天爱去电影网[www.aikan.tv/special/tiantianaiqudianyingwang/]
me标签后,当直接指定src页面是一个采用了easyui组件的页面,当parent窗口需要访问iframe中的对象时,不应该采用document的访问,而应该访问iframe的对象,这样才能用easyui中的标准api访问对象的属性和方法,具体访问方法如下两种:

  1、document.getElementById('ss_frame').contentWindow.$('#dgMANUF').datagrid('getSelected');

  2、$.find('iframe')[0].contentWindow.$('#dgMANUF').datagrid('getSelected');

  请不要使用$('#ss_frame').contentWindow.$('#dgMANUF').datagrid('getSelected');这样的代码,因为在JQuery中无法正确返回对象,系统会提示“无法获取属性“nodeName”的值: 对象为 null 或未定义 Error”之类的错误。

  访问对象的问题解决以后就会带来另外一个问题,iframe的刷新问题,因为可能大家会采用动态页面,我们看到很多解决方案说只要将对象的src修改就可以正确显示,但是我们发现系统会有一个延迟,而这对于脚本客户端会有致命的错误。解决的方法其实很简单,那就是直接让iframe的对象输出一个提示,直到页面加载完毕。具体解决代码如下:

  document.getElementById('ss_frame').contentWindow.document.write('loading...');

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表