Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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
Javascript 如何获取KendoDataSource的部分JSON_Javascript_Jquery_Kendo Ui_Kendo Datasource - Fatal编程技术网

Javascript 如何获取KendoDataSource的部分JSON

Javascript 如何获取KendoDataSource的部分JSON,javascript,jquery,kendo-ui,kendo-datasource,Javascript,Jquery,Kendo Ui,Kendo Datasource,我需要从外部服务器填写一个KendoListView,并且只需要使用我正在读取的Java Servlet响应的一部分 var srcListView = new kendo.data.DataSource({ transport: { read: { dataType: "json", url: "MainServlet", data:{e

我需要从外部服务器填写一个KendoListView,并且只需要使用我正在读取的Java Servlet响应的一部分

       var srcListView = new kendo.data.DataSource({
            transport: {
            read: {
                dataType: "json",
                url: "MainServlet",
                data:{event:"Test"},
            },
        },
    });
答复是:

{
  "status": "ok",
  "response": {
    "trucks": [
      "A6U-905",
      "AHF-888",
      "AHP-779",
      "buzz"
    ]
  }
}
我只需要卡车数组对于kendoListView,我正在使用Kendo ui,我如何才能做到这一点?

用于过滤小部件中要使用的数据:

new kendo.data.DataSource({
    transport: {
        read: {
                dataType: "json",
                url: "MainServlet",
                data:{event:"Test"},
        }
    },
    schema: {
        parse: function(data) {
            return (data && data.trucks ? data.trucks : []);
        }
    }
});
用于筛选要在小部件中使用的数据:

new kendo.data.DataSource({
    transport: {
        read: {
                dataType: "json",
                url: "MainServlet",
                data:{event:"Test"},
        }
    },
    schema: {
        parse: function(data) {
            return (data && data.trucks ? data.trucks : []);
        }
    }
});
作为关于使用的另一种选择,对于这样的情况,您可以使用更简单的解决方案,您不需要处理结果,只需返回元素中的内容。此解决方案定义为包含数据的字段的名称。在您的示例中:

new kendo.data.DataSource({
    transport: {
        read: {
                dataType: "json",
                url: "MainServlet",
                data:{event:"Test"},
        }
    },
    schema: {
        data: "response.trucks"
    }
});
我建议在需要对接收到的数据进行一些转换时使用
schema.parse
,在只返回接收到的JSON的某些子元素时使用
schema.data

作为关于使用的替代方法,您可以在不需要处理结果但只需返回元素中的内容。此解决方案定义为包含数据的字段的名称。在您的示例中:

new kendo.data.DataSource({
    transport: {
        read: {
                dataType: "json",
                url: "MainServlet",
                data:{event:"Test"},
        }
    },
    schema: {
        data: "response.trucks"
    }
});

我建议在需要对接收到的数据进行一些转换时使用
schema.parse
,而在返回接收到的JSON的一些子元素时使用
schema.data

谢谢回答,我几乎纠正了,只是我做了这件事,并且工作了。。模式:{parse:function(data){return(data&&data.response.trucks?data.response.trucks:[]);},@DavidDominguez很棒!!@DavidDominguez查看OnaBai的答案。感谢答案,我几乎纠正了我刚刚做的事情和工作..模式:{parse:function(data){return(data&&data.response.trucks?data.response.trucks:[]);},@DavidDominguez很棒!!@DavidDominguez看看OnaBai的答案。我忘记了那种方式,它好多了。我忘了那种方式,它好多了。