c#关于用HyperLink页面值传递的疑问

来源:百度知道 编辑:UC知道 时间:2024/05/29 06:15:52
我想通过hyperlink传递一个参数, NavigateUrl="~/Printtable.aspx?KeyID='+UserID+'">打印预览</asp:HyperLink>可以这样吗?请问有人可以帮忙解决一下吗?谢啦。还有下一个页面一个怎么接受参数呢
我在上一页定义的是
int UserId = Convert.ToInt32(Request.QueryString["KeyID"]);
然后是在前台定义NavigateUrl="~/Printtable.aspx?KeyID='+UserID+'">打印预览</asp:HyperLink>
jonnysuen 回答的不行哦

如果在.aspx里使用aspx.cs里的变量,你需要在aspx.cs里的方法外定义变量,且必须为public
比如在Page_Load之前这样定义
public int UserId

你是正确的

还有下一个页面一个怎么接受参数呢 ?是这么接的
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string keyid = this.Request.QueryString["KeyID"];
}
}

NavigateUrl="~/Printtable.aspx?KeyID='+UserID+'">
如果你的UserId是2,那么你想得到
NavigateUrl="~/Printtable.aspx?KeyID=2">
对吧?

你的写法是不行的。为什么一定要前台写呢,写在后台不正好。
int UserId = Convert.ToInt32(Request.QueryString["KeyID"]);
this.Hyperlink1.NavigateUrl=="~/Printtable.aspx?KeyID="+UserID;

如果需求必需的话,将以将Hyperlink替换为普通的a链接。然后这样
<a href="="~/Printtable.aspx?KeyID=<%=UserId %>"></a>