如何在点击 href 时添加 ID
How to add ID on click of a href
在我的项目中,我有不同类型的光照类别。每个类别都有其 ID。现在在我的 UI 中,如果我 select 特定类别,它的图片应该显示在转发器中。我不知道如何在 href 标签中提供 ID。
我的HTML:
<ul class="filter text-center">
<li><a data-cat="all" href="#All" class="active">All</a></li>
<li><a data-cat="Dynamite" href="#DynamiteLounge">Dynamite Lounge</a></li>
<li><a data-cat="Morsel" href="#Morsel">The Morsel Restaurant & Banquet</a></li>
<li><a data-cat="Shagun" href="#Shagun">Shagun Hotel</a></li>
<li><a data-cat="Shops" href="#Shops">Shops</a></li>
<li><a data-cat="Bunglows" href="#Bunglows">Bunglows</a></li>
</ul>
<div class="bf-single-item" id="All">
<asp:PlaceHolder ID="plcAll" runat="server">
<asp:Repeater ID="rptrAll" runat="server">
<ItemTemplate>
<div class="bf-single-item">
<asp:Image ID="imgAll" runat="server" ImageUrl='<%# Eval("ImageAll")%>' />
<div class="caption">
<%--<div class="cap-in">
<h3>
CN Lighting</h3>
<div class="bflink-preview">
<a href='<%# Eval("ImageAll") %>' rel="prettyPhoto">Zoom In</a>
</div>--%>
</div>
</ItemTemplate>
</asp:Repeater>
</asp:PlaceHolder>
</div>
<div class="bf-single-item" id="DynamiteLounge">
<asp:PlaceHolder ID="plcDynamiteLounge" runat="server">
<asp:Repeater ID="rptrDynamiteLounge" runat="server">
<ItemTemplate>
<div class="bf-single-item">
<asp:Image ID="imgDynamiteLounge" runat="server" ImageUrl='<%# Eval("ImageDynamiteLounge") %>' />
<div class="caption">
<div class="cap-in">
<h3>
CN Lighting</h3>
<%--<div class="bflink-preview">
<a href='<%# Eval("ImageAll") %>' rel="prettyPhoto">Zoom In</a>
</div>--%>
</div>
</ItemTemplate>
</asp:Repeater>
</asp:PlaceHolder>
</div>
.
.
.
在这段代码中,如您所见,我在 <li>
中有 <a href
并且我将 href
作为 div Ids
给出。见图像。如何通过ID?
标记
<asp:LinkButton runat="server" Text="All" OnClick="LinkButton_Click"></asp:LinkButton>
protected void LinkButton_Click(object sender, EventArgs e)
{
var id = (sender as LinkButton).Attributes["data-cat"];
if(id == "All")
DoSomething();
}
在后面的代码中无法像这样检索您的 id,但是 ASP.NET 4 中有 Control.ClientID
属性 可以帮助您。
假设您想要这个客户端
document.getElementsByTagName('a').forEach(function(elem){
elem.addEventListened(click_handler);
});
function click_handler(){
var id = this.id;
if(id == 'All')
doSomething();
}
假设您知道 Array.prototype.forEach
方法
在我的项目中,我有不同类型的光照类别。每个类别都有其 ID。现在在我的 UI 中,如果我 select 特定类别,它的图片应该显示在转发器中。我不知道如何在 href 标签中提供 ID。
我的HTML:
<ul class="filter text-center">
<li><a data-cat="all" href="#All" class="active">All</a></li>
<li><a data-cat="Dynamite" href="#DynamiteLounge">Dynamite Lounge</a></li>
<li><a data-cat="Morsel" href="#Morsel">The Morsel Restaurant & Banquet</a></li>
<li><a data-cat="Shagun" href="#Shagun">Shagun Hotel</a></li>
<li><a data-cat="Shops" href="#Shops">Shops</a></li>
<li><a data-cat="Bunglows" href="#Bunglows">Bunglows</a></li>
</ul>
<div class="bf-single-item" id="All">
<asp:PlaceHolder ID="plcAll" runat="server">
<asp:Repeater ID="rptrAll" runat="server">
<ItemTemplate>
<div class="bf-single-item">
<asp:Image ID="imgAll" runat="server" ImageUrl='<%# Eval("ImageAll")%>' />
<div class="caption">
<%--<div class="cap-in">
<h3>
CN Lighting</h3>
<div class="bflink-preview">
<a href='<%# Eval("ImageAll") %>' rel="prettyPhoto">Zoom In</a>
</div>--%>
</div>
</ItemTemplate>
</asp:Repeater>
</asp:PlaceHolder>
</div>
<div class="bf-single-item" id="DynamiteLounge">
<asp:PlaceHolder ID="plcDynamiteLounge" runat="server">
<asp:Repeater ID="rptrDynamiteLounge" runat="server">
<ItemTemplate>
<div class="bf-single-item">
<asp:Image ID="imgDynamiteLounge" runat="server" ImageUrl='<%# Eval("ImageDynamiteLounge") %>' />
<div class="caption">
<div class="cap-in">
<h3>
CN Lighting</h3>
<%--<div class="bflink-preview">
<a href='<%# Eval("ImageAll") %>' rel="prettyPhoto">Zoom In</a>
</div>--%>
</div>
</ItemTemplate>
</asp:Repeater>
</asp:PlaceHolder>
</div>
.
.
.
在这段代码中,如您所见,我在 <li>
中有 <a href
并且我将 href
作为 div Ids
给出。见图像。如何通过ID?
标记
<asp:LinkButton runat="server" Text="All" OnClick="LinkButton_Click"></asp:LinkButton>
protected void LinkButton_Click(object sender, EventArgs e)
{
var id = (sender as LinkButton).Attributes["data-cat"];
if(id == "All")
DoSomething();
}
在后面的代码中无法像这样检索您的 id,但是 ASP.NET 4 中有 Control.ClientID
属性 可以帮助您。
假设您想要这个客户端
document.getElementsByTagName('a').forEach(function(elem){
elem.addEventListened(click_handler);
});
function click_handler(){
var id = this.id;
if(id == 'All')
doSomething();
}
假设您知道 Array.prototype.forEach
方法