javascript - 小程序 picker 對(duì)于 objArray 怎么取值
問題描述
小程序 picker 組件,看 demo 里面是有 objArray 這個(gè)類型,但是又沒有用到,我現(xiàn)在就是y有一組 objArray 需要用到,但是怎么都不能正常顯示,麻煩大家?guī)兔聪拢?/p>
小程序 demo 鏈接:picker
wxml:
<picker bindchange='bindPickerChange' value='{{index}}' range='{{objectArray}}'> <view class='picker'> 當(dāng)前選擇:{{objectArray[index]}} </view></picker>
js:
Page({ data: { objectArray: [ {id: 0,name: ’美國(guó)’ }, {id: 1,name: ’中國(guó)’ }, {id: 2,name: ’巴西’ }, {id: 3,name: ’日本’ } ] }, bindPickerChange: function(e) { console.log(’picker發(fā)送選擇改變,攜帶值為’, e.detail.value) this.setData({ index: e.detail.value }) }})
這樣的話,顯示的下拉選項(xiàng)就是[object Object],選中之后在頁(yè)面顯示的也是這樣,我現(xiàn)在是想下拉列表顯示 name 里面的值,然后知道選中的 id,實(shí)在是不知道怎么實(shí)現(xiàn)了。。。
問題解答
回答1:使用這個(gè)屬性應(yīng)該是可以的,修改后的代碼如下:
<picker bindchange='bindPickerChange' value='{{index}}' range-key='name' range='{{objectArray}}'> <view class='picker'> 當(dāng)前選擇:{{objectArray[index].name}} </view></picker>
Update1:
Page({ data: { objectArray: [ {id: 0,name: ’美國(guó)’ }, {id: 1,name: ’中國(guó)’ }, {id: 2,name: ’巴西’ }, {id: 3,name: ’日本’ } ] }, bindPickerChange: function(e) { console.log(’picker發(fā)送選擇改變,攜帶值為’, e.detail.value) var index = e.detail.value; var currentId = this.data.objectArray[index].id; // 這個(gè)id就是選中項(xiàng)的id this.setData({ index: e.detail.value }) }})回答2:
添加 range-key=’obj.item’,例如
<picker bindchange='bindPickerChange' value='{{index}}' range-key='name' range='{{objectArray}}'> <view class='picker'> 當(dāng)前選擇:{{objectArray[index].name}} </view></picker
相關(guān)文章:
1. mysql - sql 左連接結(jié)果union右連接結(jié)果,導(dǎo)致重復(fù)性計(jì)算怎么解決?2. 網(wǎng)頁(yè)爬蟲 - python 爬取網(wǎng)站 并解析非json內(nèi)容3. mysql 遠(yuǎn)程連接出錯(cuò)10060,我已經(jīng)設(shè)置了任意主機(jī)了。。。4. 默認(rèn)輸出類型為json,如何輸出html5. 數(shù)組排序,并把排序后的值存入到新數(shù)組中6. php多任務(wù)倒計(jì)時(shí)求助7. mysql怎么表示兩個(gè)字段的差8. javascript - 滾動(dòng)到指定高度 開始輪流放動(dòng)畫,QQPC官網(wǎng)就是這么做的,請(qǐng)問使用什么開源庫(kù)方便點(diǎn)?9. PHP訂單派單系統(tǒng)10. MySQL的聯(lián)合查詢[union]有什么實(shí)際的用處
