jquery执行iframe中的javascript代码

morose999 2012-05-21 10:14:48
用jquery获取到了iframe,但如何在这个iframe中执行javascript代码?

Javascript代码是这样实现的:window.frames['mainFrame'].function()

由于特殊原因,iframe只能通过jquery获取...
...全文
284 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
morose999 2012-05-21
  • 打赏
  • 举报
回复
解决。。很费脑细胞啊。贴上解决代码,有哪位同学要是遇到我这种情况可以参考一下

$("#tabs").tabs("getSelected").find("iframe").get(0).contentWindow.callback();

$("#tabs").tabs("getSelected"):获取当前激活的tabs
").find("iframe").get(0).contentWindow:查找激活的tabs中的iframe,将他转为dom对象并获取他的window对象
.callback():执行此iframe中的函数,我这个函数是用来刷新当前iframe的数据列表的,前面不做限定的话,他会刷新页面中的所有iframe....

这是用了jquery.easyui的tabs,每个tabs都是一个iframe,这里每个iframe的name都是一样的,只有src不一样,所以不能直接用window.frames[name]这种代码。

整个页面结构大致如下


<body>
<div id="tabs">
<ul>
<li class='selected'>页面1<iframe name='mainFrame' src='..'></iframe></li>
<li>页面2<iframe name='mainFrame' src='..'></iframe></li>
<li>页面3<iframe name='mainFrame' src='..'></iframe></li>
</ul>
</div>


</body>


我是完全自己手贱。。在iframe中的弹出窗口是在主窗口执行,所以弹出窗口关闭后,要在iframe中回调用来进行后续处理代码,比如刷新iframe.所以……
morose999 2012-05-21
  • 打赏
  • 举报
回复
可能是我没有表达清楚,iframe的src都是本地页面,我是要执行iframe中的javascript函数,并不是要查找或者修改iframe中的元素,如果查找修改的话,直接jquery就可以实现了。


001007009 2012-05-21
  • 打赏
  • 举报
回复
iframe src的链接是外联的 还是 楼主你自己的页面
如果是你自己的页面,直接在页面内写不就得了?
如果 跨域了,最好用后台来处理
参考下
http://uicss.cn/cross-domain/

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧