Ich verwende jQuery, um ein Datenattribut filtername
auf einem onClick zu setzen, das funktioniert gut.Datenattribut gibt undefined zurück
$('#tag-group ul').append('<li><i class="fa fa-times" aria-hidden="true" data-filtergroup="'+filterGroup+'" data-filtername="'+filterName+'"></i>'+text+'</li>');
Es macht auf dem Bildschirm heraus ok als
<li><i class="fa fa-times" aria-hidden="true" data-filtergroup="location" data-filtername="Melbourne"></i> Melbourne</li>
ich dann auf einem anderen onClick wieder zu holen versuchen, aber es kommt wieder als nicht definiert. Wenn ich console log $(this).text();
es funktioniert, aber wenn ich Protokoll loggen $(this).data('filtername');
ist es undefiniert. Versteckt das dom es, wenn es von jQuery generiert wird?
$(document).on('click','#sau-filter-tags ul li', function(event){
var text = $(this).text();
var filterName = $(this).data('filtername');
console.log(filterName); //Undefined
});
Haben Sie versucht, die Anmeldung '$ (this)', um herauszufinden, was _that_ selbst ist? Es ist kein Element, das irgendwelche "Daten" -Attribute hat. – Xufox