您的位置:首页 > 其它

dojo小例子(13)给Select指定id及label

2014-04-27 09:14 260 查看
用store为Select提供数据时,store中的数据必须带有id和label属性。实际情况是我们的数据格式多种多样,不一定带有id和label。这时可以用Select的labelAttr指定数据中的哪个属性作为label。但是只指定label不指定id,下拉菜单虽然可以显示出来,却无法选中。所以还必须指定一个属性作为id,用store的idProperty来指定id。Memory和JsonRest都有idProperty属性,但是直接给Select提供数据,显示出来的下拉菜单项是无序的,和数据的原始顺序不一致,所以还需要用ObjectStore包一下再给Select使用。

var json = new JsonRest({
target: url
});

json.query().then(function(data) {
var mem = new Memory({
data: data,
idProperty: "num" // data中的属性num作为id
});
var os = new ObjectStore({
objectStore: mem
});
var select = new Select({
name: "type",
store: os,
labelAttr: "name", // data中的属性name作为label显示
style: "width: 150px;"
}, "div_type");
select.startup();
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: