我有一个网站的登录页面,会员可以在文本框中插入电子邮件。我的问题是如何根据文本框的值重定向到另一个页面,例如
Response.Redirect("homepage.aspx?and here the value of the textbox");
答案 0 :(得分:5)
keyboardP的答案是正确的,但请记住在您的网站中打开的安全漏洞。您需要通过所有验证来运行该文本框值,以避免XSS攻击,请求劫持或任何其他恶意行为,只需使用文本框中的值而无需验证它。
如果这不是问题,您应该将keyboardP的答案标记为正确答案。
答案 1 :(得分:4)
Response.Redirect(string.Format("homepage.aspx?{0}", myTextbox.Text));
上面的所有代码都是将{0}
替换为使用Text属性检索的文本框的值。然后将页面重定向到包含文本框值的新形成的字符串。
作为旁注,由于我不知道你的文本框中有什么,你应该像这样为查询字符串添加一个ID:
string.Format("homepage.aspx?mytextbox={0}", myTextbox.Text)
这样可以更容易地从另一端检索QueryString。
编辑 - 要接收QueryString,您可以在它被重定向到的页面上处理它。在该页面中,您可以执行以下操作:
protected void Page_Load(object sender, EventArgs e)
{
//notice that we're using the id `mytextbox`
string qsvalue = Request.QueryString["mytextbox"];
if (qsvalue != null)
{
...
}
}
我假设它是一个字符串,但你也可以将它解析为其他类型,如整数,如果这是你期望的。