ASP.Net中表單POST到其他頁面的方法分享

字號:


    這篇文章主要介紹了ASP.Net中表單POST到其他頁面的方法,需要的朋友可以參考下
    在ASP中,我們通常把表單提交到另外一個頁面(接受數(shù)據(jù)頁面)。但是在ASP.NET中,服務(wù)端表單通常都是提交到本頁面的,如果我設(shè)置
    代碼如下:
    form1.action="test.aspx";
    那么就會導(dǎo)致視圖驗證錯誤的錯誤,因為Asp.net安全機(jī)制引起的。我們也可以關(guān)閉這個驗證,在接受頁面中(test.aspx)頭部加上
    代碼如下:
    <%@ Page EnableViewStateMac="false" %>
    但這樣做不是很安全,其實asp.net 2.0 還提供了一種方式提交到其他頁面,服務(wù)器按鈕控件提供了一個屬性:PostBackUrl,這樣寫
    代碼如下:
    button1.PostBackUrl="test.aspx";
    這樣就不會引起驗證錯誤的問題了,又很安全。
    --------------------------------------------------------------------------------------
    這里順便說一下動態(tài)修改form表單屬性的方法一些方法,與上面無關(guān)系:例如修改target屬性
    普通頁面:
    代碼如下:
    ((System.Web.UI.HtmlControls.HtmlForm)this.FindControl("form1")).Target = "_blank";
    或者
    代碼如下:
    form1.Attributes["target"] = "_blank";
    含母版頁master:
    代碼如下:
    ((System.Web.UI.HtmlControls.HtmlForm)this.Master.FindControl("form1")).Target = "_blank";
    前臺修改:
    代碼如下:
    <asp:Button ID="btnSubmit" runat="server" Text="Button" onclick="btnSubmit_Click"OnClientClick="this.form.target='_blank'" />