c#
  • asp.net
  • 2013-03-20 60 views 0 likes 
    0

    在我的頁面上,我有幾個文本框,AJAX tabpanel和gridview。頁面丟失格式

    Page_Load事件中,填充了文本框; gridview被填充等等。

    我的GridView有一個按鈕:

    <Columns> 
    <ItemTemplate> 
        <asp:Button ID="btnRedirect" 
         Text="Click me" 
         CommandArgument='<%#Eval("BkId_ZW")%>' 
         OnClick="DoRedirect" 
         runat="server" /> 
    </ItemTemplate> 
    ... 
    </Columns> 
    

    和後面的代碼,它看起來像:

    protected void DoRedirect(object sender, EventArgs e) 
        { 
         Button theButton = sender as Button; 
         string url ="http://../profile/" + theButton.CommandArgument; 
         Response.Write("<script>window.open('" + url + "');</script>");   
        } 
    

    按鈕被按下後,一個新的窗口打開(一切正常),但主頁面寬鬆的值和文本框的格式。

    這是怎麼回事?如何解決它?

    回答

    1

    Response.Write()不適合此目的。由於您在ASP.net頁面生命週期的中間添加了響應,因此您正在更改頁面輸出。如果你查看源代碼,你可能會發現你的<script>window.open...</script>線路處於一些尷尬的地方。

    因此,請改用Page.ClientScript.RegisterStartUpScript()

    +0

    謝謝大衛的快速回復,但你能給我一個例子如何使用它? – user1727321 2013-03-20 12:42:41

    +1

    別擔心@David,我已經設法解決了。 (),「JSCR」,「」,false);' '謝謝你。 – user1727321 2013-03-20 13:19:40

    相關問題