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

(编辑:jimmy 日期: 2025/9/18 浏览:2)

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

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。