打开主框架并把主框架的参数传递给子框架,网上方法不行,请帮忙

cgjl 2009-12-27 10:47:21
主框架的内容如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<frameset rows="337,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="c.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
<frameset rows="*" cols="223,*" framespacing="0" frameborder="no" border="0">
<frame src="a.aspx" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame" />
<frame src="b.aspx" name="mainFrame" id="mainFrame" title="mainFrame" />
</frameset>
</frameset>
<noframes><body>
hjhjhj
</body>
</noframes></html>

我在一个aspx网页中用一个链接(不是按纽)打开这个主框架并附带参数:http://localhost/jz/kja.html?id=179
我想把那个id=179传给那个子框架b.aspx

我在网上找了以下几种方法,就是在frame src="b.aspx" 加入参数
1是:<frame src="b.aspx?id=<%=request.getParameter("id")%>" name="mainFrame" id="mainFrame" title="mainFrame" />

2是:<frame src="b.aspx?id=<%=request("id")%>" name="mainFrame" id="mainFrame" title="mainFrame" />

3是:<frame src="b.aspx?id=<%=Request.QueryString["id"]%>" name="mainFrame" id="mainFrame" title="mainFrame" />

都是出现下面错误:
System.FormatException: Input string was not in a correct format.
at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean

parseDecimal)
at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
at System.Int32.Parse(String s)
at DreamweaverCtrls.DataSet.ConvertParameterValue(String strValue, Enum theType)
at DreamweaverCtrls.DataSet.AddParameters(IDbCommand myCommand)
at DreamweaverCtrls.DataSet.DoInit()

找了很久,都不行,请帮一下吧!
...全文
76 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cgjl 2009-12-27
  • 打赏
  • 举报
回复
谢谢!可以了
mngzilin 2009-12-27
  • 打赏
  • 举报
回复
frameset.aspx页面

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="frameset.aspx.cs" Inherits="frameset" %>

<!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>无标题页</title>
</head>
<frameset rows="337,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="c.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
<frameset rows="*" cols="223,*" framespacing="0" frameborder="no" border="0">
<frame src="a.aspx" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame" />
<frame src="b.aspx" name="mainFrame" id="mainFrame" title="mainFrame" />
</frameset>
</frameset>
<body>
</body>
</html>


frameset.aspx.cs页面
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class frameset : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
mainFrame.Attribues.Add("src","b.aspx?value="+Request.QueryString["ID"]);
}
}
mngzilin 2009-12-27
  • 打赏
  • 举报
回复
前提是:楼主将上面frameset的代码放到新建的aspx页面中,而不是html页面

补充楼上的:
<frame src="b.aspx" runat="server" name="mainFrame" id="mainFrame" title="mainFrame" />

在mainFrame.Attribues.Add("src","A.aspx?value="+Request.QueryString["ID"]);
cgjl 2009-12-27
  • 打赏
  • 举报
回复
对不起,请问楼上的加在哪个地方,能不能说详细点,谢!
wuyq11 2009-12-27
  • 打赏
  • 举报
回复
String ID= Request.QueryString["ID"];
mainFrame.Attribues.Add("src","A.aspx?value="+ID)

mainFrame.location.href="a.aspx?id="+<%=ID%>;

62,039

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧