1

我正在制作一个必须播放视频的 asp.net Web 应用程序。在我的起始页中,每个视频都有一个超链接。所有超链接都是相同的,除了它们的名称。这意味着它们都链接到同一页面。我很想知道是否有一个选项可以知道点击了哪个超链接。我想检索超链接的名称。

我生成超链接的代码如下所示:

foreach (FileInfo i in corFiles)
    {
        HyperLink t = new HyperLink();
        t.Text = i.Name;
        t.NavigateUrl = "page.aspx";
        CorrectArray.Add(t);
    }
    return CorrectArray;

超链接的文本是视频独有的,这意味着我可以根据文本名称更改要播放的视频的 src 目标。所以问题如下。当用户单击超链接时,是否有任何方法可以检索超链接的文本名称?

我希望你能帮忙!提前致谢。

问候马格努斯

4

4 回答 4

1

如果您想将帖子发回同一页面,您可以添加链接按钮而不是超链接。

foreach (FileInfo i in corFiles)
{
   LinkButton t = new LinkButton();
   t.Text = i.Name;
   t.Click += new EventHandler(DynamicClick);
   t.CommandName = i.Name;
   CorrectArray.Add(t);
}

void DynamicCommand(Object sender, CommandEventArgs e) 
{
     // using e.CommandName and e.CommandArgument you can differentiate the hyperlinks
}
于 2013-09-13T07:57:27.593 回答
0

如果我理解您的问题,您必须在超链接标签中添加名称属性,并通过获取名称在后面的代码中获取其值

于 2013-09-13T07:59:55.760 回答
0

您可以使用集成到 .NET 中的 JQuery 在用户单击超链接时获取超链接的文本。为了能够从 Javascript 访问超链接的文本,只需将其添加到链接内的 custon 标记即可具有类似的内容<a href="page.aspx" htext="hyperlink text">。由于超链接 html 是从 .NET 服务器端代码生成的,因此您必须从 .NET 服务器端上下文生成此自定义标记。

于 2013-09-13T08:00:30.933 回答
0

为什么不使用查询字符串?

 t.NavigateUrl = "page.aspx?video=<someid>"

并在页面中解析查询字符串以显示正确的视频?

于 2013-09-13T08:47:38.503 回答