2016-04-26 23 views
2

Auf einer Seite habe ich mehrere Links, die alle mit einem Tracking-Code verknüpft sind. Der Tracking-Code unterscheidet sich bei jedem Link. Wenn ich auf einen Link klicke, möchte ich den Tracking-Code auswählen, der an diesen href angehängt ist. Wenn ich nurAuswählen eines Attributs aus dem angeklickten href

verwenden
$('.bannerLink').attr('data-trackingcode') 

Es wird nur die erste Verknüpfung statt die, auf die ich klicke, wählen. Wie wähle ich die, die ich klickte nur auf

<div class="container"> 
<div> 
<a href="someLink" class="bannerLink" data-trackingcode="trackingCodeA"> 
<img src="//someImage.jpg" alt="Cereals"> 
</a></div></div> 

<div class="container"> 
<div> 
<a href="someLink" class="bannerLink" data-trackingcode="trackingCodeB"> 
<img src="//someImage.jpg" alt="Cereals"> 
</a></div></div> 

<div class="container"> 
<div> 
<a href="someLink" class="bannerLink" data-trackingcode="trackingCodeC"> 
<img src="//someImage.jpg" alt="Cereals"> 
</a></div></div> 
+0

Zweitens verwenden Sie 'data()' für den Zugriff auf 'data- *' Attribute, die unten von Rory erwähnt werden. Wäre auch hilfreich, wenn Sie Ihren ursprünglichen Versuch gepostet haben, sodass die Leute auf spezifische Code-Fixes hinweisen. –

Antwort

0
$(document).on('click','.bannerLink',function() { 
    $(this).attr('trackingcode') 
}); 
3

können Sie das this Schlüsselwort verwenden, um das klickten Element innerhalb der Click-Ereignishandler-Funktion zu verweisen. Versuchen Sie folgendes:

$('.bannerLink').click(function() { 
    var trackingCode = $(this).data('trackingcode'); 
}); 

Beachten Sie die Verwendung von data() zuzugreifen das data-* Attribut über attr() bevorzugt.

+0

danke für das Rory –

+0

Kein Problem. Vergiss nicht, die Antwort zu verbessern, wenn es hilfreich ist. –

Verwandte Themen