我需要检索 JSON 数据并使用 dojo 数据网格进行显示。我的 JSON 是这样的
var data = {
"key":[{
"key1": "info1"},
{
"key2": "info2"},
{
"key3": "info3"}
]};
提前致谢
这有点难以回答,因为很难说出你已经尝试过什么。因此我假设你已经得到了DataGrid
渲染(使用商店,就像 Daniel Hu 建议的那样),现在你想“过滤”这个特定的入口。
为此,您可能必须修复您store
之前设置的方式:
var yourData = {
"key": [{
"key1": "info1"},
{
"key2": "info2"},
{
"key3": "info3"}
]
};
var yourStore = new dojo.data.ItemFileReadStore({
data: {
identifier: 'key1',
items: yourData.key
}
});
您现在可以过滤将在DataGrid
使用query
-property 中显示的行,DataGrid
如下所示:
var grid = new dojox.grid.Datagrid({
store: yourStore,
[some other properties, (especially the structure)],
query: {key1: 'info1'} // this is where you set you filter...
}, yourDomNode).startup();
请注意,对于给定的示例数据,这将导致一个网格row
仅包含一个cell
显示“info1”的网格。商店的 items-property 需要一个包含对象的数组。这些对象中的每一个都应该代表一行,所以我猜你这个概念错了。我的意思是:key1
通常应该是一个对象。因此,查看 Daniel Hu 推荐的链接可能确实“有用”。
正如我在评论中已经提到的那样:如果这不能回答您的问题,那么如果您发布一些代码显示您已经尝试过的内容并说明不受欢迎的行为(如果它已经以某种方式“表现”),它可能会很有用...)。还要准确说明您期望的结果和实际结果。
道场DataGrid
需要商店。这应该可以帮助您:
http://dojotoolkit.org/documentation/tutorials/1.7/store_driven_grid/