Ich habe dieses HTML-Element:
<div class="list-group">
<a href="https://stackoverflow.com/questions/50149925/javascript:;" @click="showDetails(notification, $event)" class="list-group-item" v-for="notification in notifications" :key="notification.id">
<h4 class="list-group-item-heading">{{ '{{ notification.title }}' }}</h4>
<p class="list-group-item-text">{{ '{{ notification.created_at|moment }}' }}</p>
</a>
</div>
Und dieses Javascript:
return new Vue({
methods: {
showDetails: function (notification, event) {
this.notification = notification
console.info(event.target)
}
}
}
Das Problem ist, dass event.target
Gibt das genaue Element zurück, auf das ich klicke. Das heißt, es kann das sein a
Element oder eines seiner untergeordneten Elemente (h4
oder p
).
Wie bekomme ich die a
Element (das Element mit der @click
Handler), auch wenn der Benutzer auf eines seiner untergeordneten Elemente klickt?
Hast du versucht zu bestehen?
this
zu Ihrer FunktionshowDetails
? wieshowDetails(notification, $event, this)
Ihr drittes Argument sollte jetzt Ihr Anker sein– Kaddath
3. Mai 2018 um 8:09
Haben Sie es versucht?
this
anstattevent.target
?– D. Pardal
3. Mai 2018 um 8:11 Uhr
NEIN,
this
gibt die Window-Instanz selbst zurück.– Stephan Vierkant
3. Mai 2018 um 8:15 Uhr