ASP.NET PostBackUrl屬性使用

By default, if you click a button control, the page containing the control is posted back to itself and the same page is reloaded. However, you can use the PostBackUrl property to post form data to another page.
For example, the page in Listing 2.20 includes a search form. The Button control in the page posts the form to another page named ButtonSearchResults.aspx. The
ButtonSearchResults.aspx page is contained in Listing 2.21.

上面這段原版英文是摘抄自 ASP.NET 3.5 揭祕關於Button控件的闡述,現在我把它翻譯一下,個別地方可能不夠準確:

默認情況下,如果你單擊一個Button控件,包含這個控件的頁面將會回發自己的內容(到服務器),同時重新加載自己本身。然而,你可以使用PostBackUrl屬性將當前表單數據提交至另一個頁面,例如在代碼清單2.20包含了一個search的表單頁,(利用)Button控件將頁面發送至另外一個頁面名字是ButtonSearchResults.aspx的網頁.....

現在我將代碼分別出來,顯示PostBackUrl屬性的作用:

------------------------------------------------------------------------------------------------------------

Souce Code2.20(C#)

<%@ Page Language="C#" %>

<!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 id="Head1" runat="server">
    <title>Button Search</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:Label ID="lblSearch" Text="Search:" runat="server" />
            <asp:TextBox ID="txtSearch" runat="server" />
            <asp:Button ID="btnSearch" Text="Go!" PostBackUrl="ButtonSearchResults.aspx" runat="server" />
        </div>
    </form>
</body>
</html>

Sorcere Code 2.21 (C# )

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    void Page_Load()
    {
        if(PreviousPage != null)
        {
            TextBox txtSearch = (TextBox)PreviousPage.FindControl("txtSearch");
            lblSearch.Text = String.Format("Search For: {0}" ,txtSearch.Text);
        }
    }
   
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Button Search Results</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:Label ID="lblSearch" runat="server" />
        </div>
    </form>
</body>
</html>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章