如何获得value == displayedValue可能更好地回答了这个问题。或者我如何防止值为基于索引,而是使用我在商店中提供的文本字符串。
我的Json有这样的结构:
{ “项”:[{ “zipcity”: “Stocka”},{ “zipcity”: “Stockamöllan”},{ “zipcity”: “Stockaryd”}]}
是否需要改变?
目前这是我的过滤选择代码:
postadressStore = new dojox.data.QueryReadStore({url:“LKP.json”}); postadressStore.fetch({serverQuery:{name:''},queryOptions:{ignoreCase:true}});
new dijit.form.FilteringSelect({
store: postadressStore,
hasDownArrow: false,
autoComplete: false,
searchAttr: "zipcity",
style: "width: 290px;",
name:"postadress",
id: "postadress_id",
validate: function() { return true;}
},"postadress");
我尝试过更改值,但值是只读的吗?
var elm = dijit.byId(“postadress_id”); var val = elm.attr('displayedValue'); elm.attr( '值',VAL);
答案 0 :(得分:0)
postadressStore.getIdentity = function(item) {
return item.i.zipcity;
}
是必需的补充。这使得商店集合标识等于每个帖子的价值。
同时获取也是不必要的。
postadressStore.fetch({serverQuery:{name:''}, queryOptions:{ignoreCase:true}});
可以删除
所以商店的完整初始化应该是:
var postadressStore = new dojox.data.QueryReadStore({url: "LKP.json"});
postadressStore.getIdentity = function(item) {
return item.i.zipcity;
}