我有两个Kendo UI组合框,它们使用相同的后端数据,但是如果我对两个应用相同的Kendo UI DataSource,则在一个过滤器上进行过滤,第二个也要过滤(我不想发生)。

有什么方法可以将现有数据源的数据应用到新数据源中,以便节省一个服务调用。

    <select runat="server" id="combo1"></select>
    <select runat="server" id="combo2"></select>

  <script>
    var data = [
            { title: "Star Wars: A New Hope", year: 1977 },
            { title: "Star Wars: The Empire Strikes Back", year: 1980 },
            { title: "Star Wars: Return of the Jedi", year: 1983 }
    ];
    var DS1 = new kendo.data.DataSource({
            data: data
    });

    $("#combo1").kendoComboBox({
            placeholder: "Select",
            dataValueField: "year",
            dataTextField: "title",
            filter: "contains",
            dataSource: DS1
    });
    $("#combo2").kendoComboBox({
            placeholder: "Select",
            dataValueField: "year",
            dataTextField: "title",
            filter: "contains",
            dataSource: DS1
    });

  </script>


显示问题的JS bin:http://jsbin.com/likozaluci/edit?html,output

最佳答案

尝试这个 :



var data = [
            { title: "Star Wars: A New Hope", year: 1977 },
            { title: "Star Wars: The Empire Strikes Back", year: 1980 },
            { title: "Star Wars: Return of the Jedi", year: 1983 }
    ];
    var DS1 = new kendo.data.DataSource({
            data: data
    });

    var DS2 = new kendo.data.DataSource({
            data: data
    });

    $("#combo1").kendoComboBox({
            placeholder: "Select",
            dataValueField: "year",
            dataTextField: "title",
            filter: "contains",
            dataSource: DS1
    });

    $("#combo2").kendoComboBox({
            placeholder: "Select",
            dataValueField: "year",
            dataTextField: "title",
            filter: "contains",
            dataSource: DS2
    });

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title>Kendo UI Snippet</title>

    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.3.1026/styles/kendo.common.min.css"/>
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.3.1026/styles/kendo.rtl.min.css"/>
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.3.1026/styles/kendo.silver.min.css"/>
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.3.1026/styles/kendo.mobile.all.min.css"/>

    <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
    <script src="https://kendo.cdn.telerik.com/2017.3.1026/js/kendo.all.min.js"></script>
</head>
<body>

<select runat="server" id="combo1"></select>
<select runat="server" id="combo2"></select>
</body>
</html>

07-27 13:15
查看更多