代码之家  ›  专栏  ›  技术社区  ›  Kai

从lowerframe中的页面访问upperframe中的页面会导致未定义的错误!

  •  2
  • Kai  · 技术社区  · 14 年前

    我的网站由两个框架组成,比如说上框架和下框架。

    在LowerFrame中准备好页面的文档上,它访问位于UpperFrame页面上的一个文本框。 有时,由于上框架不能完成其加载,下框架在访问上框架时会得到未定义的。

    如果有任何解决方案/检查可以防止此问题,请通知我?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Ayaz Alavi    14 年前

    尝试jquery.load()函数

    加载事件发送到元素 当它和所有子元素 已完全加载。此事件可以发送到任何关联的元素 使用URL:images、scripts、frames、iframes和window 对象。

    这是样本代码

    编辑:
    把下面的代码放在文档中,准备好下一个iframe。

      $(function(){
       $('#UpperIframeID', window.parent.document).load(function(){  
            var valueOFTextbox = (this).contents().find("#textboxID").val();                                 
       });
     });
       </script>
    

    如果它在IE中不起作用,那么将条件语句和用于IE use.ready()函数。

        2
  •  2
  •   IgalSt    14 年前

    如何更新两个帧的父级中的两个var:topready和bottomready。在上面和下面的帧中,您将它们设置为调用一个函数来检查它们是否都是真的。如果不是这样,它将适当的var设置为true,一旦第二帧调用函数,它将触发您想要的任何操作。

    编辑: 另一种选择是尝试并使用

    $(window.parent.upperFrame).ready(function(){
      alert('upperFrame loaded')
    });