ASP.Net中表单POST到其他页面的方法

2018-07-20    来源:编程学习网

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

在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'" />

标签: 安全 服务器

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:VS中新建网站和新建WEB项目的区别

下一篇:理解模型,视图和控制器(C#)