鍍金池/ 問答/HTML/ vue中在多個input上用v-model綁定值,怎么獲取當前獲得焦點輸入框的值

vue中在多個input上用v-model綁定值,怎么獲取當前獲得焦點輸入框的值,并改變其值;

怎么獲取多個用v-model綁定的輸入框中獲得焦點的元素的值

自己在做一個移動端項目,要輸入價格,自己造了一個鍵盤,要把每次鍵盤點擊后獲得的值變成字符串與之前的值拼接起來,并同步到相應輸入框中,求大佬給個思路

相關代碼

<input type="text" class="carriageprice" v-model="carriage" placeholder="0.00" ref="carriageprice">
<input type="text" class="inputprice" v-model="originalprice" placeholder="0.00">

我已獲得鍵盤點擊后的值,但是不知道怎么把值插入到對應數(shù)據(jù)中

回答
編輯回答
賤人曾

拋磚引玉,思路如下
鍵盤唯一?
1 -- 唯一,則通過@focus觸發(fā)方法,調起鍵盤,并通過變量保存觸發(fā)鍵盤的input的唯一標志來確保改變的值對應
2 -- 不唯一,與input組件構成單獨的業(yè)務邏輯組件... 則內部處理標識...一般考慮時間戳
具體改變值的方法 - 字符串拼接 ,包括刪除 清空都是處理字符串,通過唯一標志來處理對應的變量

<input @focus="inputOnFocus" v-model="inputValue" id="test1"/>
...
data(){
 inutFocus:'inputId',
 inputValue:''
},
methods:{
  inputOnFocus(e){//如果列表渲染input 則可以通過item傳入相應的參數(shù)定位到input,此處使用event事件
    this.showKeyBoard();
    this.inutFocus = e.target.id //傳入item則  = item.id
  },
  keyboardClick(){
    //省略鍵盤處理邏輯
    let clickValue = 'a';
    this.inputValue += clickValue;//類似這樣處理,退格刪除 清空也是處理inputValue
  }
}
2018年6月7日 07:39
編輯回答
維他命

點擊鍵盤獲取鍵盤值1,然后再把this.originalprice+=1就行了

2018年7月19日 15:25
編輯回答
情皺

還是不是很明白,我這邊鍵盤是唯一的,我也在鍵盤上設置了方法得到了當前我點擊的值的方法,并調試輸出該值正確。我用var x = document.activeElement.nodeValue;這句代碼來動態(tài)獲取當前焦點在哪個框從而得到它目前的值。我的考慮是,我每次點擊鍵盤時,這句代碼都執(zhí)行一遍,這樣就可以得到上一次的值了,再這樣去拼接 y = x.toString()+key.toString();拼接好了之后再把值賦給當前輸入框.。目前出現(xiàn)的問題是第一即使我在兩個輸入框賦初值為實數(shù)(也就是不為零),但總是輸出x = null。第二,拼接好了之后再把值賦給當前輸入框怎么操作,怎么通過焦點元素來得到它v-model綁定的值呢

2018年8月10日 14:48