ASP.net request.form 获取表单值

来源:百度知道 编辑:UC知道 时间:2024/06/19 13:23:29
比如我在a.aspx页面 <form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Button" /></div>
</form>
我想通过单击button按钮把TextBox1和2的值在b.aspx中显示!最好是request.form 这个方法

呵呵。在ASP.NET中,你要是直接从另外一个页面用POST不用GET接受表单值的话,有三个方法。第一,把那个<form id="form1" runat="server"> 这个标签改一下,不要在服务器端运行,不用RUNAT=SERVER,还要把那些服务器端控件改成HTML控件。就是被TEXTBOX改成HTML里的那个文本框,按钮用SUBMIT控件。
这个方法就是跟一般的ASP做法相同。

第二,就是在BUTTON里控件里添加一个POSTBACKURL属性。它的值就是你的b.aspx。这样在你的那个b.aspx就能接受表单的值了。

第三,比较难懂。不告诉你具体怎么做了。因为前两种够你用了。但是还是告诉你原理一下。这样你以后深入的时候有好处。就是C#代码里重写OnInit事件。把它的默认接受的页面改成你自己所想要的页面。因为ASP.NET里的FORM控件生成的HTML的action属性默认是当前页面。它重写就是为了把它重写生成的HTML的action属性改为你自己想要的页面了。这个重写你可以百度一下。我也没具体去写了。

好了。还有什么不懂的。可以发百度消息给我。

asp.net服务器控件不支持request.form 这个方法获取数据,一般使用传递参数的形式,如:
在button按钮事件中Response.Redirect("b.aspx?id=" + this.TextBox1.Text.ToString());
在b.aspx页面中,string id=Request.QueryString["id"].ToString();

楼上是文盲
还说的一楞一楞的。

button有一个 PostBackUrl="a.aspx"属性。这里设置一下就是POST提交了。

Response.Redirect("index.aspx?UserName=" + this.Login1.UserName.ToString());