我正在使用Dojo 1.5使用数据存储区中的一些数据创建dijit.form.Select。我发现的问题是我希望select显示由标识符排序的元素,但select是通过标签对它们进行排序。我该如何避免这种行为?我发现的另一个问题是,当我设置商店时,我初始化商店以选择其中一个元素,但它正在选择第一个元素。代码如下:
dojo.require("dijit.form.Select");
dojo.require('dojo.data.ItemFileReadStore');
dojo.addOnLoad(function(){
var boxContent = {"identifier":"idBox","items":[{"accessLevel":"FULL_ACCESS",
"boxName":"My Documents","boxType":"PERSONAL","idBox":1512,"numberFiles":9,
"userDisplayName":"Jose Luis Martinez Avial","userName":"MIAMARA"},
{"accessLevel":"FULL_ACCESS","boxName":"12312312","boxType":"PERSONAL",
"idBox":17100,"numberFiles":0,"userDisplayName":"Jose Luis MartinezAvial",
"userName":"MIAMARA"}],"label":"boxName"};
var myStore = new dojo.data.ItemFileReadStore({data: boxContent });
var boxCombo= new dijit.form.Select({
name: 'select2' }).placeAt(dojo.body());
boxCombo.setStore(myStore,1512);
})
可在http://jsfiddle.net/m9ucX/1/
中找到感谢您的帮助。
答案 0 :(得分:6)
万一有人来看,这个问题也在dojo-interest邮件列表上被询问(并且已被回答):
如果你只是设置sortByLabel:false,我想你会得到你想要的东西 你的选择。
来源:
http://mail.dojotoolkit.org/pipermail/dojo-interest/2011-February/052328.html