小程序模板網(wǎng)

微信小程序input獲取輸入,如何獲取參數(shù)

發(fā)布時(shí)間:2021-06-25 10:52 所屬欄目:小程序開發(fā)教程

通常使用的是input的綁定方法

bindinput="userInput"
 
綁定的方法如下,通過e攜帶的detail.value獲取用戶的輸入
 
 userInput(e) {
       this.setData({
           name : e.detail.value,
      })
  }

 
e為該方法觸發(fā)返回節(jié)點(diǎn)攜帶的參數(shù),如果你想知道e是什么可以將起打印處理
 
1. console.log(e)
 
頁面input組件綁定獲取方法
<input class='name'  bindinput="userInput" maxlength="3" value="{{name}}" placeholder="輸入商品的名稱"></input>
 
那么對于頁面很多的input,是否需要每一個(gè)輸入對應(yīng)一個(gè)方法呢?
 
其實(shí)只要一個(gè)就可以了,獲取對應(yīng)的參數(shù)和用戶的值即可
獲取值的方式是e.detail.value;
 
獲取參數(shù)的方式呢?其實(shí)可以給input攜帶參數(shù)id
<input class='name'  bindinput="userInput"  
id='name' 
 maxlength="3" value="{{name}}" placeholder="輸入商品的名稱"></input>
<input class='price'  bindinput="userInput"  
id='price' 
 maxlength="3" value="{{price}}" placeholder="輸入商品的價(jià)格"></input>
 
獲取節(jié)點(diǎn)對應(yīng)的id為 e.target.id
 
這時(shí)上面的方法可以寫成
 
userInput(e) {
      let id = e.target.id;
       this.setData({
          [id] : e.detail.value,
     })
  }

 
或是這樣
 
 userInput(e) {
       this.setData({
          [e.target.id] : e.detail.value,
      })
  }

 
這時(shí)同一個(gè)方法就可以分別獲取到商品的name和price輸入的值了
 
如果是要提交一個(gè)表單呢,所有參數(shù)都需要整個(gè)提交參數(shù)
 
這時(shí)提交時(shí)希望直接提交一個(gè)參數(shù),而不是要整合,可以把所有參數(shù)加到一個(gè)對象內(nèi)即可,那如何獲取呢?
 
 
 this.setData({
        'args.id':   290
 })

 
通過上面的方式可以使data內(nèi)的args的屬性id的值為290
 
那么就可以改進(jìn)上面的方式獲取表單的值
<input class='name'  bindinput="userInput" id='args.name' maxlength="3" value="{{args.name}}" placeholder="輸入商品的名稱"></input>
<input class='price'  bindinput="userInput" id='args.price' maxlength="3" value="{{args.price}}" placeholder="輸入商品的價(jià)格"></input>
 
通過
 
userInput(e) {
       this.setData({
          [e.target.id] : e.detail.value,
      })
  }

 
獲取到用戶輸入的值直接存入args對象中
 
 
args : {
     name: '金鑼',
      price: '23.99'
}

 
可以通過控制臺(tái)查看參數(shù)變化

 

 當(dāng)然

<textarea  placeholder="輸入商品的名稱" maxlength="60"  bindinput="userInput"  id='args.name'  value="{{args.name}}"> </textarea>
也適用


易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://22321a.com/wxmini/doc/course/26737.html 復(fù)制鏈接 如需定制請聯(lián)系易優(yōu)客服咨詢:800182392 點(diǎn)擊咨詢
QQ在線咨詢