用jquery获取到了iframe,但如何在这个iframe中执行javascript代码?Javascript代码是这样实现的:window.frames['mainFrame'].function()由于特殊原因,iframe只能通过jquery获取...

解决方案 »

  1.   

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

  2.   

    可能是我没有表达清楚,iframe的src都是本地页面,我是要执行iframe中的javascript函数,并不是要查找或者修改iframe中的元素,如果查找修改的话,直接jquery就可以实现了。
      

  3.   

    解决。。很费脑细胞啊。贴上解决代码,有哪位同学要是遇到我这种情况可以参考一下$("#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.所以……