我有一个页面 default.aspx ,其中有一个 datagrid 的超链接列,  其 URL 字符串值为       webform1.aspx?id={0},另一个页面 index.html 由 webform1.aspx 和 webform2.aspx 组成,我想在default.aspx 中点击 datagrid 的超链接列时能转到 index.html 页面,由其中的 webform1.aspx 的 page_load 接收 Request.QueryString["id"] 参数可以吗?怎么做呢? 如果不行的话我怎么才能把default.aspx 中的参数传到 webform1.aspx中去?

解决方案 »

  1.   

    index.hmtl如果写成aspx页面就好解决了,iframe的src后面动态附带上你的参数就可以了。如果你一定要用html页面做外面的框架,那就要用javascript把index.html的document.URL中的参数给解析出来,也就是拆字符串了。然后用parents.frame[index]去改 webform1.aspx 和 webform2.aspx 的src,并加上你刚才解析出来的参数。
      

  2.   

    /// <summary>
    /// ShowModalDialog(for ie 5.0)
    /// </summary>
    /// <param name="paramType"></param>
    /// <param name="docID"></param>
    /// <param name="version"></param>
    public static void ShowModalDialog(string modalPageId,System.Web.UI.Page oriPage,params string[] paramItem)
    {
    string strScript = "<script language=Javascript>";
    strScript += "subWin = window.open('"+modalPageId; for(int i=0;i<paramItem.Length;i++)
    {
    if(i==0)
    strScript += "?";
    else
    strScript += "&";

    strScript += "param"+i.ToString()+"="+paramItem[i];
    } strScript += "',null,'top=274,left=262,height=300,width=240,status=no,toolbar=yes,menubar=no,location=no')";
    strScript += "</script>"; oriPage.RegisterStartupScript("subScript",strScript);
    }
      

  3.   

    to:dychen(大圣) ( ) ,请问.aspx能做框架页面吗?怎么做啊?就是想做一个index.aspx包含webform1.aspx和webform2.aspx,如果能做成的话,又怎么把default.aspx中的参数传到webform1.aspx中去呢?
      

  4.   

    .aspx能做框架页面吗?怎么做啊?
    和html页面一样。。怎么把default.aspx中的参数传到webform1.aspx中去呢?
    你上面的连接应该指向index.aspx。
     datagrid 的超链接列,  其 URL 字符串值为       index.aspx?id={0}
    然后在index.aspx.cs页面的Page_Load中接收这个id,
    下面那样试试。
    private void Page_Load(object sender, System.EventArgs e)
    {
      // 在此处放置用户代码以初始化页面
      string id="";
      id=Request.QueryString["id"].ToString();
      Response.Write("<script language='javascript'>document.frames.frameName.src= webform1.aspx?id="+ id +"</script>");  

    }
      

  5.   

    我觉得在框架结构页面中 直接 如 webform1.aspx?<%# 参数()%>   “参数()”  这个函数是在框架页面后台设置的
      

  6.   

    index.aspx:
    private void Page_Load(object sender, System.EventArgs e)
    {
      string id="";
      id=Request.QueryString["id"].ToString();
      Response.Write("<frameset cols='200,*'><frame src='webform1.aspx?id=" + id + "'><frame src='webform2.aspx'></frameset>");
    }
      

  7.   

    private void Page_Load(object sender, System.EventArgs e)
    {
      string id="";
      id=Request.QueryString["id"].ToString();
      Response.Write("<frameset cols='200,*'><frame src='webform1.aspx?id=" + id + "'><frame src='webform2.aspx'></frameset>");
    }
      

  8.   

    1.用参数
    像上面说的
    private void Page_Load(object sender, System.EventArgs e)
    {
      string id="";
      id=Request.QueryString["id"].ToString();
      Response.Write("<frameset cols='200,*'><frame src='webform1.aspx?id=" + id + "'><frame src='webform2.aspx'></frameset>");
    }
    2.用session
    现在我用的是session
      

  9.   

    上面都是在运行时才分框架,能像HTML那样在设计时就成框架页面的样子吗?asp.net的书上没讲aspx页面怎么做框架。也许只有我这种初学者才问这种问题吧。TO:codeangel(与人方便,自已方便) ,请问若用session传递参数的话,是从default.aspx传给index.aspx再传给webform1.aspx呢,还是直接从default.aspx传给webform1.aspx?
      

  10.   

    试图设计器下面不是有个HTML选项吗。在HTML里你高兴加什么都行啊