Emberjs - Obtenir l'attribut de l'élément cliqué
-
28-10-2019 - |
Question
Question: Lors d'un clic, je vois que evt.target.attributes stocke tous les attributs dans un tableau.Existe-t-il un moyen plus simple sans avoir à itérer tous les attributs pour obtenir une certaine valeur d'attributs?Dans cet exemple, j'ai besoin de la valeur de l'attribut 'note' pour l'élément sur lequel vous avez cliqué.
Modèle:
<a note="C" {{action "play" on="click"}}>></a>
Gestionnaire de clics (lecture):
var keys = Ember.View.create({
templateName: 'keys',
notes: this.get('allKeys'),
play:function(evt){
var attributes= evt.target.attributes;
console.log(attributes);
}
La solution
Si un contrôleur ne sauvegarde pas la vue, une solution consiste à transformer la cible d'événement en objet jQuery
play : function(event) {
var note = $(event.target).attr("note");
// More code here
}
Autres conseils
Another way is to pass the attribute value as parameter to the action.
<a note="C" onClick={{action "play" value="target.note"}}></a>
And you can access it like this:
...
actions: {
play(note) {
console.log(note);
},
},
...
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow