在c#asp.net中单击了什么超链接?
我正在制作一个asp.net web应用程序,它必须播放视频。在我的起始页中,每个视频都有一个超链接。除名称外,所有超链接都是相同的。这意味着它们都链接到同一个页面。我想知道是否有一个选项可以知道点击了哪个超链接。我想检索超链接的名称 我生成超链接的代码如下所示:在c#asp.net中单击了什么超链接?,c#,asp.net,hyperlink,C#,Asp.net,Hyperlink,我正在制作一个asp.net web应用程序,它必须播放视频。在我的起始页中,每个视频都有一个超链接。除名称外,所有超链接都是相同的。这意味着它们都链接到同一个页面。我想知道是否有一个选项可以知道点击了哪个超链接。我想检索超链接的名称 我生成超链接的代码如下所示: foreach (FileInfo i in corFiles) { HyperLink t = new HyperLink(); t.Text = i.Name; t.Navi
foreach (FileInfo i in corFiles)
{
HyperLink t = new HyperLink();
t.Text = i.Name;
t.NavigateUrl = "page.aspx";
CorrectArray.Add(t);
}
return CorrectArray;
超链接的文本对于视频是唯一的,这意味着我可以根据文本名称将视频的src目标更改为播放。所以问题是这样的。当用户单击超链接时,是否有任何方法可以检索超链接的文本名称
我希望你能帮忙!提前谢谢
问候
Magnus如果您想发回同一页面,可以添加链接按钮而不是超链接
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
}
如果要将文章发回同一页面,可以添加链接按钮而不是超链接
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
}
如果我理解你的问题,
如果我理解您的问题,您必须在超链接标记中添加name属性,并通过获取名称在代码中获取其值,
您必须在超链接标记中添加name属性,并通过获取名称在代码中获取其值您可以使用集成到.NET中的JQuery在用户单击超链接时获取其文本。要能够从Javascript访问超链接的文本,只需将其添加到链接内的custon标记中,就可以得到类似这样的内容。由于超链接html是从.NET服务器端代码生成的,因此必须从.NET服务器端上下文生成此自定义标记。用户单击超链接后,可以使用集成到.NET中的JQuery获取超链接文本。要能够从Javascript访问超链接的文本,只需将其添加到链接内的custon标记中,就可以得到类似这样的内容。由于超链接html是从.NET服务器端代码生成的,因此您必须从.NET服务器端上下文生成此自定义标记。为什么不使用查询字符串
t.NavigateUrl = "page.aspx?video=<someid>"
t.NavigateUrl=“page.aspx?video=”
在页面中,您可以解析查询字符串以显示正确的视频?为什么不使用查询字符串
t.NavigateUrl = "page.aspx?video=<someid>"
t.NavigateUrl=“page.aspx?video=”
在页面中,您解析查询字符串以显示正确的视频?您不是为每个查询字符串设置了一个ID吗?只要用户单击任意一个查询字符串,您就可以在用户机器上保存cookiehyperlink@MelanciaUK. 不,我没有为他们每个人设置一个ID,因为将有100多个,他们的名字将是唯一的,所以他们可以作为一个ID工作。但是如果这更容易,我可以给他们ID吗?我假设数字就足够了?我只是想知道他们的ID是否和他们的名字一样,因为在代码背后你可以很容易地访问ID。你不是为他们每个人都设置了一个ID吗?只要用户点击任何一个,你就可以在用户机器上保存cookiehyperlink@MelanciaUK. 不,我没有为他们每个人设置一个ID,因为将有100多个,他们的名字将是唯一的,所以他们可以作为一个ID工作。但是如果这更容易,我可以给他们ID吗?我想数字就足够了?我只是想知道他们的ID是否和他们的名字一样,因为在代码背后你可以很容易地访问ID。比如说我有100个不同的超链接。而不是将每个超链接链接到单个页面。我想让他们链接到同一页,但根据点击的超链接,同一页将显示不同的视频。因此,我需要一种方法来知道用户单击哪个超链接。现在,由于每个视频的名称都是唯一的,我的想法是,当用户单击超链接时,我可以以某种方式检索该名称,然后我可以动态更改新页面将显示的视频。谢谢你迄今为止的帮助!您的应用程序是Asp.net mvc吗?如果是这种情况,您将视频的名称隐藏在一个输入类型中,并将其名称设置为例如
,然后在单击链接时将其发布到控制器。在控制器中,您可以获得如下值string video=Request.Params['video']
假设我有100个不同的超链接。而不是将每个超链接链接到单个页面。我想让他们链接到同一页,但根据点击的超链接,同一页将显示不同的视频。因此,我需要一种方法来知道用户单击哪个超链接。现在,由于每个视频的名称都是唯一的,我的想法是,当用户单击超链接时,我可以以某种方式检索该名称,然后我可以动态更改新页面将显示的视频。谢谢你迄今为止的帮助!您的应用程序是Asp.net mvc吗?如果是这种情况,您将视频的名称隐藏在输入类型中,并将其名称设置为例如
,然后在单击链接时将其发布到控制器中。在控制器中,您获得的值如下string video=Request.Params['video']
,但这样做会包括我必须为每个超链接创建一个新页面吗?或者我完全关闭了?@M.frank-无需创建新页面,使用带有查询字符串的相同页面url。除此之外,您不需要超链接,您可以使用链接按钮并处理链接按钮的单击事件,在单击事件中,您可以知道已单击了哪个按钮。@M.frank-很高兴为您提供了帮助。:)但这样做会包括我必须为每个超链接创建一个新页面吗?或者我完全关闭了?@M.frank-无需创建新页面,使用带有查询字符串的相同页面url。除此之外,您不需要超链接,您可以使用链接按钮并处理链接按钮的单击事件,在单击事件中,您可以知道已单击了哪个按钮。@M.frank-很高兴为您提供了帮助。:)