开发者

Initially selected value from store in dijit.form.FilteringSelect

I ha开发者_如何学运维ve a dojo.data.ItemFileReadStore as follows:

var partyStore = new dojo.data.ItemFileReadStore({
    id: 'partyStore',
    data: {
    label:'name', 
    items:[
       {value:'APPLES', name:['Apples']},
       {value:'ORANGES', name:['ORANGES']},
       {value:'PEARS', name:['PEARS']}
    ]}
});

and a dijit.form.FilteringSelect as:

var partyList = new dijit.form.FilteringSelect({
    id: "partyLookup", 
    name: 'partyLookup',
    store: partyStore,
    searchAttr: "name"}, infoDiv);

How can I make the initially selected value be Oranges? I have tried various entries for the value in the FilteringSelect so have left it out in this example.


Your data store doesn't seem right. Try changing it to:

var partyStore = new dojo.data.ItemFileReadStore({
    identifier: 'value',
    items:[
       {value:'APPLES', name:'Apples'},
       {value:'ORANGES', name:'ORANGES'},
       {value:'PEARS', name:'PEARS'}
    ]
});

You can then set the value of the dijit.

partyList.set('value', 'ORANGES');


I had missed off the "identifier" from the store data. It seems without the identifier being set it indexes them ie. 0,1,2,3,4...

Once I set:

identifier: 'value'

the current value of the FilteringSelect comes back as the 'value' form the data.

Sorry to answer my own question, thanks to anyone who helped or took a look.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜