有没有办法用JSON结构中的SubObjects填充dojox / grid / EnhancedGrid的列? 例如,如果我有一个看起来像的JSON-Row:
{
id: 2,
name: "TestItem2",
created: {
date: "2013-03-28 11:59:40",
timezone_type: 3,
timezone: "Europe/Berlin"
}
}
我希望用" date"填充网格列。在SubObject"创建"。 我已经尝试过设置Column' s" field"财产到" created.date"在网格"结构"财产,但没有做到这一点。
答案 0 :(得分:2)
Apparently在这种情况下你可以使用格式化程序:
var structure = [[
{'name': 'Date', 'field': '_field', formatter: myFormatter }
]];
将整个节点从商店传递到一个名为myFormatter
的函数中,您可以从中传递相关条目,如:
function myFormatter(node, rowIdx){
return node.created.date;
};
另见citress'在这里回答:Dojo grid nested json
答案 1 :(得分:0)
这有点邪恶和蹩脚,但也许改变对象结构将帮助你进入网格。听起来你只想要约会,所以你可以这样做:
var o = {
id: 2,
name: "TestItem2",
created: {
date: "2013-03-28 11:59:40",
timezone_type: 3,
timezone: "Europe/Berlin"
}
};
o.created = o.created.date;
现在对象看起来像这样:
created: "2013-03-28 11:59:40"
id: 2
name: "TestItem2"
以下是来自控制台的示例: