JsonRestStore中的labelAttribute是从数组中的多个项构建的?

时间:2012-12-12 17:16:01

标签: javascript json dojo

在我尝试加载到RoundRectList的数组中,我想要的标签数据(全名)被分成数组中的3个项目(“FullName”+“MiddleName”+“LastName”)。当我构建JsonRestStore时,我不能简单地写

var store = new JsonRestStore({ target: url, allowNoTrailingSlash: 1, labelAttribute: "FullName" + "MiddleName" + "LastName" });

因为它显示为查找名为“FullNameMiddleNameLastName”的项目。如果我将三个选项设置为变量并将其作为labelAttribute传递,则它具有相同的效果。

有没有办法在JsonRestStore的labelAttribute中做我想做的事情?

2 个答案:

答案 0 :(得分:2)

我不确定您的意思是dojo/store/JsonRest还是dojox/data/JsonRestStore,但幸运的是我相信他们都支持这一点:

var store = new JsonRestStore({
    target: url,
    getLabel: function(i) {
        return i.FullName + " " + i.MiddleName + " " + i.LastName;
    }
});

我只能在dojox文档中找到它:http://dojotoolkit.org/api/1.8/dojox/data/JsonRestStore#getLabel

答案 1 :(得分:0)

您可能还需要/需要覆盖getLabelAttributes,因为它是Read api的一部分。但默认情况下,它只返回[this.labelAttribute]