KendoUI-将数组添加到数据源?

时间:2013-10-15 11:16:46

标签: kendo-ui

在KendoUI中,您可以将数组添加到网格中使用的数据源。 这个数组是动态生成的。

寻找一种可能循环遍历元素并分配它们的方法。

这就是我想要避免

var movies = [
    { 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 localDataSource = new kendo.data.DataSource({ data: movies });

2 个答案:

答案 0 :(得分:2)

是的,您当然可以使用此方法(example)或尝试以下代码:

var movies = [
    { 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 dataSource= new kendo.data.DataSource();

for (var i=0; i<movies.length; i++) {
      dataSource.add(movies[i]);
}

答案 1 :(得分:0)

在名为employees.php的数据文件夹中创建一个文件。

以下是写入动态数据的文件内容

<?php

     $link = mysql_pconnect("localhost", "root", "root") or die("Unable To Connect To Database Server");
     mysql_select_db("northwind") or die("Unable To Connect To Northwind");

      $arr = array();

     $rs = mysql_query("SELECT EmployeeID, LastName, FirstName FROM Employees");

    while($obj = mysql_fetch_object($rs)) {
           $arr[] = $obj;
    }

    echo "{\"data\":" .json_encode($arr). "}";

 ?>

和kendo ui网格示例

<body> 

    <div id="grid"></div> 

    <script>

        $(function() {
            $("#grid").kendoGrid({
                dataSource: {
                    transport: {
                        read: "data/employees.php"
                    },
                    schema: {
                        data: "data"
                    }
                },
                columns: [{ field: "FirstName" }, { field: "LastName" }]
            });
        });

    </script> 

</body>

希望这会对你有所帮助