精华内容
下载资源
问答
  • 父元素与子iframe相互获取变量和元素对象的方法有很多,本文提供了一些不错的示例另收集网上的一些,可以参考下
  • :  var count = 1; ...--------------------------------------------------------...子iframe中:  alert(window.parent.count); //获取的js变量  alert($("#username", window.parent.document
    父中:
    <input id="username"type="text" />
    <scripttype="text/javascript">
        var count = 1;
    </script>
    -------------------------------------------------------------
    子iframe中:
    <scripttype="text/javascript">
        alert(window.parent.count); //获取父中的js变量
        alert($("#username", window.parent.document));//获取父中jQuery对象
      alert(window.parent.document.getElementByIdx_x('username') );//获取父中DOM对象
    </script>

    --------------------------------------------------------------------------------------------------


    子iframe中(id="iframeId"name="iframeName"):
    <input id="username"type="text" />
    <scripttype="text/javascript">
        varcount = 1;
    </script>
    -------------------------------------------------------------
    父中:
    <scripttype="text/javascript">
        alert(document.iframeName.count);//获取子iframe中的js变量
        alert( $(window.frames[" iframeName "].document).contents() .find("#username"));//获取子iframe中jQuery对象
    alert($("#username",document.frames(" iframeName").document));//获取子iframe中jQuery对象
      alert(window.document.getElementById('iframeId').contentWindow.document.getElementByIdx_x('username') );//获取子iframe中DOM对象
    </script>



    收集网上的一些示例:
    用jQuery在IFRAME里取得父窗口的某个元素的值
    只好用DOM方法与jquery方法结合的方式实现了

    1. 在父窗口中操作 选中IFRAME中的所有单选钮
    $(window.frames["iframe1"].document).find("input:radio").attr("checked","true");
    2. 在IFRAME中操作 选中父窗口中的所有单选钮
    $(window.parent.document).find("input:radio").attr("checked","true");
    父窗口想获得IFrame中的Iframe,就再加一个frames子级就行了,如:
    $(window.frames["iframe1"].frames["iframe2"].document).find("input:radio").attr("checked","true");
    3.在子窗口中调用父窗口中的另一个子窗口的方法(FRAME):
    parent.frames["Main"].Fun();
    注意:建议使用[],这样比较兼容多个浏览器,()火狐/搜狗/谷歌不兼容。
    展开全文
  • JavaScript获取iframe子页面全局变量

    万次阅读 2014-10-29 15:58:59
    项目通过iframe内嵌了一个

       项目中通过iframe内嵌了一个子页面,子页面定义了一些全局变量,父页面需要获取子页面的全局变量,做了一些测试(我的环境IE10和Firefox32.0.3),得出如下结论:

      IE下: window.frames['iPage'].变量名
      火狐下:window.frames['iPage'].contentWindow.变量名
      IE&火狐下:document.getElementById('iPage').contentWindow.变量名

     具体原因没有深究,今天在调试一个iframe例子的时候发现了问题所在(iframe没有定义name属性),下面做了一个实例

     父页面 parent.html

    <html>
    <script>
      function test(){
        var obj1=document.getElementById("myframe");//获得对应iframe的HTMLIFrameElement对象,可以获取iframe相关属性
        alert(obj1.src);
        
        /*情况一:iframe定义了name="myframe"的情况 IE和火狐兼容*/
        var obj2=window.frames["myframe"];//获得对应iframe的window对象
        alert(obj2.company);
        alert(obj2.document.myform.username.value);
        
        alert(obj1.contentWindow==obj2);//true,可见document.getElementById("myframe").contentWindow与document.frames["myframe"]都是指向iframe对应的window对象
      alert(obj1.contentWindow.document.myform.username.value);
      
      
      /*情况二:iframe没有定义name="myframe"的情况,情况如同文章最开始所描述
        var obj2=window.frames["myframe"];//获得对应iframe的window对象
        alert(obj2.company);//IE下正确,火狐下错误
        alert(obj2.contentWindow.company);//IE下错误,火狐下正确
        alert(obj2.contentWindow.document.myform.username.value);//IE下错误,火狐下正确
        
        alert(obj1==obj2);//true,可见document.getElementById("myframe")与document.frames["myframe"]都是指向iframe对应的HTMLIFrameElement对象
      */
      }
    </script>
    <body οnlοad="test()">
      <iframe id="myframe" name="myframe" src="child.html" frameborder="3" style="width:300;height:200;border-width:1;border-color:red;border-style:solid"></iframe>
    </body>
    </html>

    子页面 child.html

    <html>
     <script>
       var company="cppei";
     </script>
    <body>
      <form name="myform">
        用户名:<input type="text" name="username" value="test" />
      </form>
    </body>
    </html>

    最后得出的结论是:要在父页面访问iframe内子页面的全局变量,

    1、在iframe 定义了name属性的情况下
      IE&火狐下: window.frames['iPage'].变量名
      IE&火狐下:document.getElementById('iPage').contentWindow.变量名

      因为此时 window.frames['iPage']==document.getElementById('iPage').contentWindow

    2、在iframe 没有定义name属性的情况下

      IE下: window.frames['iPage'].变量名
      火狐下:window.frames['iPage'].contentWindow.变量名
      IE&火狐下:document.getElementById('iPage').contentWindow.变量名

      因为此时火狐下window.frames['iPage']==document.getElementById('iPage'),所以要加上contentWindow来访问变量

    所以定义iframe时还是最好加上name属性吧再见

    展开全文
  • 父元素获取iframe变量 元素代码 // An highlighted block parent.postMessage("要传递的变量名", '*') 父元素代码 // An highlighted block function receiveMessage (event) { console.log(event.data);//...

    父元素获取iframe的变量

    子元素代码

    // An highlighted block
    parent.postMessage("要传递的变量名", '*')
    

    父元素代码

    // An highlighted block
    function receiveMessage (event) {
      console.log(event.data);//data就是接收的值
    }
    window.addEventListener('message', receiveMessage, false);
    
    展开全文
  • 父页面获取 页面iframe里的变量

    千次阅读 2019-01-24 11:02:27
    iframe id="XXX" scrolling="auto" frameborder="0" width="100%" height="570px" src="XXX"&gt; &lt;/iframe&gt;    var 变量名称...

    <iframe id="XXX" scrolling="auto" frameborder="0" width="100%" height="570px" src="XXX"> </iframe>

     

     var 变量名称= document.getElementById('XXX').contentWindow.变量名称;

    展开全文
  • layer.open({ ...//通过该对象可以获取iframe中变量,调用iframe中的方法 body.find("#formalityIds").val(formalityIds)//对iframe中的dom赋值 w.mySubmit(index);//调用iframe中的方法 }, });
  • //通过该对象可以获取iframe中变量,调用iframe中的方法 body.find("#formalityIds").val(formalityIds)//对iframe中的dom赋值 w.mySubmit(index);//调用iframe中的方法 }, }); 转载于:...
  • 父页面和iframe子页面变量的交互

    千次阅读 2017-07-05 15:53:43
    父页面和iframe子页面交互变量和元素
  • 方法只有一种:  步骤: 1、获取iframe节点 ...2、获取iframe中变量 示例 a.html b.html  var y='1'; 在a.html中获取y,则可以通过以下方式 document.frames['x'].y //先获取frame,在获取y
  • 获取子页面dom:$("iframe").eq(0).contents().find("selector") 调用子页面js变量和方法:$("iframe")...以jquery为例,假如子iframe为 obj = $("iframe").eq(0)现在obj为jquery对象 获取子页面dom // selector为
  • 一、获取子页面方法 1、页面里增加iframe链接路径 <iframesrc="consult.html"frameborder="0"class="layadmin-iframe"id="J_questionzx">...二、iframe子页面调用父页面公共变量使用parent.c...
  • 父页面获取iframe页面元素和变量 获取方法:$("#id")[0].contentWindow.showInfo(); 获取元素:$("#id")....iframe子页面获取父页面元素变量 window.parent.showInfo(); 转载于:https://www.cnblogs.com/y...
  • 1.父页面获取子页面id为“#st”的dom var getSomething=$("iframe").contents().find("#st"); 2获取多级iframe嵌套的dom元素 let getSomething = $("iframe").contents().find("iframe").contents().find("#...
  • 在本文,主要介绍:  (1)父页面a.html调用iframe插入的... 如下图所示为父页面a.html页面,该页面使用iframe插入了b.html页面,在a.html页面调用了b.html页面的函数,并获取了b.html页面变量d...
  • 在父页面设置全局变量,在页面进行修改后将页面的变量赋值给父页面 2,页面访问父页面变量: parent.parentVariable, parentVariable是父页面变量 3,页面访问父页面元素: parent.document.getElementById...
  • alert("加载。。。"); } else { var dom =$(window.frames[ " index " ].document).find( " .goods_reco " ).data( ' datasid ' ); console.log(dom) var c = $( ' #index ' )[ 0 ].contentWindow; ...
  • 页面获取父页面的方法,变量,标签等页面获取父页面的方法,变量,标签等
  • 想要取得iframe中的元素和js变量值,不能用$(document).ready()方法,而是要用$("#iframeId").load()方法
  • $('#iframeId')[0].contentWindow.variable; 页面的全局变量,请使用var 声明,切勿使用let,否则会undefined
  • 项目通过iframe内嵌了一个页面,页面定义了一些全局变量,父页面需要获取子页面的全局变量,做了一些测试(我的环境IE10和Firefox32.0.3),得出如下结论:  IE下: window.frames['iPage'].变量名  ...
  • 这是页面的一部分代码由于我要实现聊天功能,多以需要父页面调用页面chat变量判断是否需要弹窗 <div class="container"> <header><h3 id="username">与{{username}}聊天</h3></...
  • 子iframe再从主html得到该值。 主html: stcc.html var weaList = []; 父iframe: WeatherMsg.html 全局变量: var weatherNum_send = []; 获取weatherNum_send 的值: var len=$(...
  • JavaScript实现IFrame子窗口调用父窗口的全局变量
  • 如图:获取自己定义页面的变量 iframe内容: 输出iframe的window里没有自己要拿取的变量
  • 1、获取页面上的iframe  1-1、 document.getElementById('iframeId');  1-2、 window.frames[0]、window.frames['frameName']、frames['frameName']、frames[0]、self.frames[0],此处self与window等价,相当于...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,265
精华内容 4,506
关键字:

获取子iframe中变量