Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MVVM-将JSON子元素绑定到剑道UI控件_Mvvm_Kendo Ui - Fatal编程技术网

MVVM-将JSON子元素绑定到剑道UI控件

MVVM-将JSON子元素绑定到剑道UI控件,mvvm,kendo-ui,Mvvm,Kendo Ui,我想将子节点绑定到两个不同的剑道ui控件,但我的剑道数据源在一次调用中从服务获取数据 var viewModel = kendo.observable { dataSource : new kendo.data.DataSource({ transport: { read: { url: '/data/auras', dataType: "json", type: 'GET', }

我想将子节点绑定到两个不同的剑道ui控件,但我的剑道数据源在一次调用中从服务获取数据

var viewModel = kendo.observable {
 dataSource : new kendo.data.DataSource({
    transport: {
        read: {
            url: '/data/auras',
            dataType: "json",
            type: 'GET',
        }
    },
    schema: {
      /////////
    },   
 });
}
我的JSON响应结果如下所示

[
{
    "id": "0001",
    "type": "donut",
    "name": "Cake",
    "ppu": 0.55,
    "batters": {
        "batter": [
            {
                "id": "1001",
                "type": "Regular"
            },
            {
                "id": "1002",
                "type": "Chocolate"
            },
            {
                "id": "1003",
                "type": "Blueberry"
            },
            {
                "id": "1004",
                "type": "Devil's Food"
            }
        ]
    },
    "topping": [
        {
            "id": "5001",
            "type": "None"
        },
        {
            "id": "5002",
            "type": "Glazed"
        },
        {
            "id": "5005",
            "type": "Sugar"
        },
        {
            "id": "5007",
            "type": "Powdered Sugar"
        },
        {
            "id": "5006",
            "type": "Chocolate with Sprinkles"
        },
        {
            "id": "5003",
            "type": "Chocolate"
        },
        {
            "id": "5004",
            "type": "Maple"
        }
    ]
}    
]

这里我必须将batter(is-child元素)绑定到一个Gridview,并将top(is-child元素)绑定到另一个Gridview,

您可以使用它将JSON结果拆分为两个列表。比如:

var batters = new kendo.data.DataSource({
    data: []
});

var toppings = new kendo.data.DataSource({
    data: []
});

var allData = new kendo.data.DataSource({
    transport: {
        read: {
            url: '/data/auras',
            dataType: "json",
            type: 'GET',
        }
    },
    schema: {
        parse: function (data) {
            batters.data(data[0].batters.batter);
            toppings.data(data[0].toppings);
            return data;
        }
    },   
 });

allData.fetch();

var viewModel = kendo.observable({
    batters: batters,
    toppings: toppings
});

谢谢你的回复,这里我想把我所有的东西都放在可观察的对象里。代码可以重新排列,把东西移到可观察的对象里。我不认为这会使我的答案出错。嗨,这里我有另一个问题,可以从allData datasource获取
类型“:“甜甜圈”,“名称“:“蛋糕”,“ppu”:0.55,