我是ASP.Net的新手。希望你不介意我的问题对某些人来说这么简单。
在我的code.aspx页面中,我有一个HyperLink:
<asp:HyperLink ID="HyperLink1" runat="server">在code.aspx.cs中,我希望HyperLink1导航到具有id的: Show.asp页面。
比如:
HyperLink1.NavigateUrl="'id'/~Show.asp?id={0}";//it seems the syntax is wrong.你能告诉我一个正确的语法吗?
发布于 2013-09-25 13:27:28
这取决于URL的格式。您可以简单地使用标记:
NavigateUrl="/url.aspx?id=1"但这一点都不是动态的,很可能只使用一个原始的<a>元素。尽管它确实有助于在代码隐藏(如果需要的话)中动态更改它,比如在PostBack上。
您还可以在代码隐藏中设置整个过程:
link.NavigateUrl = string.Format("/url.aspx?id={0}", id);否则,您可以在标记中提供格式并以代码隐藏的方式更改它(我发现,为了使链接更加清晰,只需查看标记-设计器等),就不需要找到页面后面的代码引用( URL的一部分是定义的,以便查看其去向):
NavigateUrl="/url.aspx?id={0}"然后在代码隐藏中使用:
link.NavigateUrl = string.Format(link.NavigateUrl, id);当然,您也不需要使用string.Format,您可以使用运算符(即"/url.aspx?id=" + id.ToString())“本地”连接字符串。
还有其他方法,比如在中继器中使用内联脚本来访问数据项,但是我不会给出一个例子,因为我很少提倡这样做(只有在绝对必要的情况下才会这样做)。
发布于 2013-09-25 13:23:20
您可以使用String.Format
HyperLink1.NavigateUrl = String.Format("id/~Show.asp?id={0}", myID);其中myID是要用{0}替换的值。另外,您确定扩展不是aspx而不是asp吗?ASP与活动服务器页面有关,而aspx是ASP.NET编译页面的扩展。
发布于 2013-09-25 13:22:48
String.Format("Show.asp?id={0}", id);这假设id是一个保存要传递的值的变量。
https://stackoverflow.com/questions/19006112
复制相似问题