簡體   English   中英

Vue.js + Element UI:在更改時獲取“event.target”

[英]Vue.js + Element UI: Get “event.target” at change

我無法獲取在其事件處理程序中觸發事件的html字段(在javascript中是event.target )。

我有一張表格:

  • 附加到更改事件的函數的輸入元素
  • 管理更改事件的函數

我的代碼如下:

 var Main = { methods: { change(par) { console.log("The value is: " + par); //HERE I can't get "event.target" } } }; var Ctor = Vue.extend(Main) new Ctor().$mount('#app') 
 <script src="//unpkg.com/vue/dist/vue.js"></script> <script src="//unpkg.com/element-ui@1.4.0-beta.1/lib/index.js"></script> <div id="app"> <template> <el-input @change="change" placeholder="Input something here"/> </template> </div> 

我知道我可以調用不同的函數,在每一個函數中,我都知道誰是相對的輸入,但我想使用一個常見的函數。

在stacktrace之后,我在element-ui.common.js看到了事件代碼:

handleChange: function handleChange(event) {
  this.$emit('change', event.target.value);
},

element只將值傳遞給事件處理程序。
無論如何,任何想要獲得event.target想法,好嗎?

謝謝

你可以使用@ input.native

 var Main = { methods: { change(event) { console.log("The value is: " + event.target.value); //HERE I can't get "event.target" } } }; var Ctor = Vue.extend(Main) new Ctor().$mount('#app') 
 <script src="//unpkg.com/vue/dist/vue.js"></script> <script src="//unpkg.com/element-ui@1.4.0-beta.1/lib/index.js"></script> <div id="app"> <template> <el-input @input.native="change" placeholder="Input something here"/> </template> </div> 

看起來Element UI只是吃掉事件而只返回值。 您可以做什么而不是@change(change)@keyup.native(change)然后您的par參數將是事件而不僅僅是值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM