Cliquez sur li pour obtenir la valeur html du li actuellement cliqué?;
<body>
<p id="page">
<ul>
<li v-on:click="aa(this)" v-for="item in items">{{item}}</li>
</ul>
</p>
<script type="text/javascript">
new Vue({
el: '#page',
data: {
items:[11,22,33,44]
},
methods:{
aa:function(obj){
console.log(obj); //打印出來的是 window對象?
alert(obj.html()); //找不到點擊的值;
}
}
})
</script>
</body>
Le this passé après avoir cliqué sur li est imprimé en tant qu'objet window, pas en tant qu'objet li, donc l'objet ne peut pas être trouvé, comment transmettre l'objet li actuel à js??
Lisez attentivement la documentation... ne faites pas d'hypothèses sur ces utilisations inexplicables.
Lorsqu'un événement en ligne doit accéder à l'objet événement d'origine, ajoutez-y simplement $event
paramètres. Comme ?a :
<li v-on:click="aa($event)" v-for="item in items">{{item}}</li>
Vous devez avoir le courantli
標(biāo)簽的對象,讀取事件對象下的currentTarget
屬性就行了,即event.currentTarget
.
<li @click="aa(item)" v-for="item in items">{{item}}</li>
aa(item) {
console.log(item) // 當(dāng)前l(fā)i的內(nèi)容
}
Ajoutez un attribut ref à li, puis récupérez le n?ud dom via this.$refs dans les méthodes
Test possible :
<li @click="aa($event)" v-for="item in items">{{item}}</li>
methods:{
aa:function(event){
console.log(event.target.innerHTML);
}
}