asp.net中表單POST到其他頁面的方法

來源:互聯網
上載者:User
在ASP中,我們通常把表單提交到另外一個頁面(接受資料頁面)。但是在ASP.NET中,服務端表單通常都是提交到本頁面的,如果我設定

form1.action="test.aspx";

那麼就會導致視圖驗證錯誤的錯誤,因為Asp.net安全機制引起的。我們也可以關閉這個驗證,在接受頁面中(test.aspx)頭部加上

<%@ Page EnableViewStateMac="false" %>

但這樣做不是很安全,其實asp.net 2.0 還提供了一種方式提交到其他頁面,伺服器按鈕控制項提供了一個屬性:PostBackUrl,這樣寫

button1.PostBackUrl="test.aspx";

這樣就不會引起驗證錯誤的問題了,又很安全。

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

這裡順便說一下動態修改form表單屬性的方法一些方法,與上面無關係:例如修改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'" />

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.