default.aspx通过window.open()弹出新窗口default2.aspx,同时把id值传给default2.aspx,但是default2.aspx却显示不出相应的内容,页面里面全是空白,请高手们帮帮忙吧!!!
default1.aspx页面有关代码:
<body>
    <form id="form1" runat="server">
    <div>
        &nbsp;
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
            DataSourceID="SqlDataSource1" Height="526px" Style="z-index: 100; left: 137px;
            position: absolute; top: 13px" Width="745px" BorderWidth="0px" OnSelectedIndexChanged="GridView1_SelectedIndexChanged">
            <Columns>
                <asp:TemplateField SortExpression="title">
                <ItemTemplate>
                <a href="#?id=<%#DataBinder.Eval(Container.DataItem,"id") %>" onclick="auto_open()">
                <%#DataBinder.Eval(Container.DataItem,"title") %>
                </a>
                </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:6ConnectionString %>"
            SelectCommand="SELECT * FROM [90]"></asp:SqlDataSource>
    
    </div>
    </form>
    <script language="javascript">
    function auto_open()
    {
       window.open("default2.aspx","","toolbar=yes,menubar=yes,resizable=yes,width=200,height=300,left=200,top=0,scrollbars=yes");
    }
    </script>
</body>default2.aspx相关代码:
<body>
    <form id="form1" runat="server">
    <div>
        &nbsp; &nbsp; &nbsp;&nbsp;
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
            DataSourceID="SqlDataSource1" OnSelectedIndexChanged="GridView1_SelectedIndexChanged1" style="z-index: 100; left: 18px; position: absolute; top: 88px" Height="293px" Width="914px">
            <Columns>
                <asp:TemplateField SortExpression="content">
                <ItemTemplate>
                <a>
                <%#DataBinder.Eval(Container.DataItem,"content") %>
                </a>
                </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:6ConnectionString %>"
            SelectCommand="SELECT content FROM [90] where(id=@id)">
            <SelectParameters>
                <asp:QueryStringParameter Name="id" QueryStringField="id" />
            </SelectParameters>
        </asp:SqlDataSource>
    
    </div>
    </form>
</body>
 protected void Page_Load(object sender, EventArgs e)
    {
        string id=Request.QueryString["id"];
    }

解决方案 »

  1.   

    default2中跟踪调试
    你看看id传过来了么?
      

  2.   

    <a href="#?id=<%#DataBinder.Eval(Container.DataItem,"id") %>" onclick="auto_open()">
    function auto_open()
     {
           window.open("default2.aspx","","toolbar=yes,menubar=yes,resizable=yes,width=200,height=300,left=200,top=0,scrollbars=yes");
    }
    ---------------------------
    貌似没有传过去
      

  3.   

    <a href="#?id=<%#DataBinder.Eval(Container.DataItem,"id") %>" onclick="auto_open()">
    这种写法有问题啊,改成这样试试
    <a href="#" onclick="auto_open(="<%#DataBinder.Eval(Container.DataItem,"id") %>" )"></a>
    function auto_open(id)
     {
           location.href="Default.aspx?id="+id;
           window.open("default2.aspx","","toolbar=yes,menubar=yes,resizable=yes,width=200,height=300,left=200,top=0,scrollbars=yes");
    }
      

  4.   

    以上的写法估计都不行
    将上面仁兄的程序稍微改动一下
    <a href="#" onclick="auto_open(="<%#DataBinder.Eval(Container.DataItem,"id") %>" )"></a>
    function auto_open(id)
     {
           var href="default2.aspx?id="+id;
           window.open(href,"","toolbar=yes,menubar=yes,resizable=yes,width=200,height=300,left=200,top=0,scrollbars=yes");
    }
      

  5.   

    你的id没传过去!!!你把你的id赋给open的url地址中!!!