首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NavigateUrl标签的正确语法

NavigateUrl标签的正确语法
EN

Stack Overflow用户
提问于 2013-09-25 13:20:20
回答 4查看 776关注 0票数 0

我是ASP.Net的新手。希望你不介意我的问题对某些人来说这么简单。

在我的code.aspx页面中,我有一个HyperLink:

代码语言:javascript
复制
  <asp:HyperLink ID="HyperLink1" runat="server">

code.aspx.cs中,我希望HyperLink1导航到具有id的: Show.asp页面。

比如:

代码语言:javascript
复制
HyperLink1.NavigateUrl="'id'/~Show.asp?id={0}";//it seems the syntax is wrong.

你能告诉我一个正确的语法吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-09-25 13:27:28

这取决于URL的格式。您可以简单地使用标记:

代码语言:javascript
复制
NavigateUrl="/url.aspx?id=1"

但这一点都不是动态的,很可能只使用一个原始的<a>元素。尽管它确实有助于在代码隐藏(如果需要的话)中动态更改它,比如在PostBack上。

您还可以在代码隐藏中设置整个过程:

代码语言:javascript
复制
link.NavigateUrl = string.Format("/url.aspx?id={0}", id);

否则,您可以在标记中提供格式并以代码隐藏的方式更改它(我发现,为了使链接更加清晰,只需查看标记-设计器等),就不需要找到页面后面的代码引用( URL的一部分是定义的,以便查看其去向):

代码语言:javascript
复制
NavigateUrl="/url.aspx?id={0}"

然后在代码隐藏中使用:

代码语言:javascript
复制
link.NavigateUrl = string.Format(link.NavigateUrl, id);

当然,您也不需要使用string.Format,您可以使用运算符(即"/url.aspx?id=" + id.ToString())“本地”连接字符串。

还有其他方法,比如在中继器中使用内联脚本来访问数据项,但是我不会给出一个例子,因为我很少提倡这样做(只有在绝对必要的情况下才会这样做)。

票数 1
EN

Stack Overflow用户

发布于 2013-09-25 13:23:20

您可以使用String.Format

代码语言:javascript
复制
HyperLink1.NavigateUrl = String.Format("id/~Show.asp?id={0}", myID);

其中myID是要用{0}替换的值。另外,您确定扩展不是aspx而不是asp吗?ASP与活动服务器页面有关,而aspxASP.NET编译页面的扩展。

票数 3
EN

Stack Overflow用户

发布于 2013-09-25 13:22:48

代码语言:javascript
复制
String.Format("Show.asp?id={0}", id);

这假设id是一个保存要传递的值的变量。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19006112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档