单击超链接,使用查询字符串值导航URL

时间:2011-06-02 10:18:18

标签: c# query-string navigateurl

我有一个带有'email'和'password'文本框的控件以及一个'autoLogin'复选框。所有都是Web表单控件(不是HTML控件)。并且有一个“登录”超链接。当我点击heperlink时,我想使用NavigateUrl属性移动到其他页面,如下所示:

NavigateUrl="~/DoLogin.aspx?email={0}&pwd={1}&autoLogin={3}"

如何传递以及如何获取查询字符串?

提前致谢...

4 个答案:

答案 0 :(得分:3)

private void btnSubmit_Click(object sender, System.EventArgs e)
{
Response.Redirect("Webform2.aspx?Email=" +
this.txtemail.Text + "&Pwd=" +
txtPassword.Text);
} 

现在为下一页(Webform2.aspx)去那里并在页面加载事件中写下这段代码

private void Page_Load(object sender, System.EventArgs e)
{
string Email = Request.QueryString["Email"];
 string password = Request.QueryString["Pwd"];
} 

你也可以使用这个

private void Page_Load(object sender, System.EventArgs e)
{
 string Email = Request.QueryString[0];
 string password = Request.QueryString[1];
}

将此值放在“您想要的地方”

答案 1 :(得分:0)

最简单的方法是不使用超链接而是使用按钮(或链接按钮)并进行回发,然后更好地使用Response.Redirect("Url")或事件,直接处理登录。另外,您必须使用javascript收集数据。

答案 2 :(得分:0)

登录时点击发送此代码

Response.Redirect("~/DoLogin.aspx?email=" + txtEmail.txt + "&pwd=" + txtPwd.text)

答案 3 :(得分:0)

我假设您这样做是因为您的DoLogin页面在Page_Load中有一些登录代码?

我真的不建议在网址中传递用户名/密码凭据。

就像@Magnus所说的那样,最好将Hyperlink更改为LinkButton并将代码放在那里。