ASP.PostBackUrl的请求类型是GET
本文关键字:GET 类型 请求 PostBackUrl ASP | 更新日期: 2023-09-27 18:08:15
我正在尝试使用PostBackUrl从上一页获取值,但没有来自上一页的值,然后我在PageLoad中检查了什么类型的请求进来,显示为get
第一页 <asp:Button ID="Button1" runat="server" Text="Button" PostBackUrl="~/SecondPage" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
第二页
protected void Page_Load(object sender, EventArgs e)
{
string type= Request.RequestType; // comes as GET
Label1.Text = Request.Form["TextBox1"];
}
为什么是GET ?我怎样才能得到Texbox1的值?
编辑:我发现,因为asp, get就要来了。. NET友好的url。我能做些什么来研究asp ?. NET友好url
请给我建议
谢谢
为什么是GET?检查表单声明您是否设置了表单方法?
<form id="form1" runat="server" method="get">
</form>
如何获得Texbox1的值?
因为它是一个GET请求,所以使用request . querystring。请求。表单用于POST请求。
protected void Page_Load(object sender, EventArgs e)
{
string type= Request.RequestType; // comes as GET
Label1.Text = Request.QueryString["TextBox1"];
}
无论如何,从第一页到第二页存储值的另一种方法是使用ASP。净会话。protected void Button1_Click(object sender, EventArgs e)
{
Session["textbox1"] = TextBox1.Text;
}
第二页:
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = Session["textbox1"].ToString();
}
当URL重写器重定向时,它将post更改为get。
要改变这种行为,在RouteConfig.cs文件中将重定向模式设置为off。
settings.AutoRedirectMode = RedirectMode.Off;
如果你不想显示扩展名,你必须从引用中删除它们。
您可以尝试以下跨页面发布
((TextBox)PreviousPage.FindControl("TextBox1")).Text;