location.href在框架中的使用target,如果只是简单的设置location.href="",会使得整个页面显示在子框架中,导致出现重叠框架。
解决办法:
window.top.framename.location.href = url;
window.parent.location.href=url;
mainframe.location.href=url;
下面是框架架构:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="frame_index.aspx.cs" Inherits="common_frame_index" %>
<%@ Import Namespace="CommonLayer" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>
<%= CommonClass.ProjectName %></title>
<link rel="shortcut icon" href="/images/favicon.ico" type="image/x-icon" />
</head>
<frameset rows="67,*,25" cols="*" frameborder="no" border="0" framespacing="0" vertical-align="middle;">
<frame src="frame_top.aspx" name="topFrame" scrolling="no" noresize="noresize" id="topFrame" />
<frameset cols="209,7,*" frameborder="no" border="0" framespacing="0" name= "mainContentFrame" id = "mainContentFrame" >
<frame src="frame_left.aspx" name="leftFrame" scrolling="auto" id="leftFrame" noresize="noresize" />
<frame src="frame_center.html" name="CenterFrame" id="CenterFrame" title="CenterFrame" />
<frame src="frame_content.aspx" name="main" id="main" scrolling="yes" frameborder="no" noresize="noresize"/>
</frameset>
<frame src= "frame_bottom.aspx" name="bottom" scrolling="no" noresize="noresize" id="bottom" title="bottom" />
</frameset>
</html>