如何处理parent.frames问题?

时间:2011-11-28 08:53:09

标签: c# asp.net

好的,我有一个令人沮丧的问题。我觉得解决方案非常简单,但我找不到它。我有一个像这样的框架方案的网页:

    <frameset rows="48px,*">
      <frame name="title" src="titol.aspx" frameborder="0" scrolling="no" />
        <frameset id="workFrame" cols="200,0,*,0">
          <frame name="menu" src="legend.aspx" frameborder="1" scrolling="yes" style="border:2px solid #FFF"/>
          <frame name="map" src="map.aspx" frameborder="1" scrolling="yes" style="border:2px solid #FFF"/>
          <frame name="loading" src="loading.aspx" frameborder="1" scrolling="yes" style="border:2px solid #FFF"/>
          <frame name="form" src="blank.aspx" frameborder="0" scrolling="yes"/>

            </frameset>
         <noframes>
           <p>
               some text
           </p>
         </noframes>
   </frameset>

现在,我在“标题”框架中有一个图像,我在其中编辑,当它被点击时,它会打开一个新窗口(弹出,而不是在新标签中)。在那个窗口中,我有几个地图示例(带有链接的地图名称)。如果我想在用户点击地图链接后在“地图”框架中显示地图,我该如何编码链接?我试过了:

             onclick="parent.frames['map'].location… = 'map.aspx'
             onclick="windows.opener.location.href = 'map.aspx' .....

我不知道如何解决这个问题。再一次,当在新窗口中单击链接时,所选地图必须显示在“地图”框架中,如果您可以在用户点击后显示自动关闭该新窗口的代码,那也很棒。地图链接。

2 个答案:

答案 0 :(得分:1)

不会像

那样
window.opener.parent.frames['map'].location.href = "map.aspx";

由于window.opener是标题页,其父级是框架集?

答案 1 :(得分:0)

你必须使用框架吗?帧会导致搜索引擎索引页面,书签和打印页面时出现问题。一个很好的解决方案是使用ajax将地图加载到目标div中。那里有很多技术--JQuery ajax很受欢迎且非常免费。适用于跨浏览器。

http://api.jquery.com/jQuery.ajax/

欣赏这可能不是您正在寻找的答案 - 提倡激进的页面重新设计而不是快速修复。