【问题标题】:Binding Kendo DataGrid using jquery使用 jquery 绑定 Kendo DataGrid
【发布时间】:2014-03-24 21:51:12
【问题描述】:

我正在将信息从控制器传递到如下视图:

return View(data);

如何在视图中访问这些数据以便将数据绑定到 KendoDataGrid? 我有以下代码:

@model IEnumerable<MyCustomerModel>
<div id="StatementGrid"></div>
<script>
    $(document).ready(function() {
        var lines = [{ TransactionDate: "01/01/2014", TransactionNumber: "001" }];//this works
        var lines2 = @model //How to pass the model information here?

        var grid = $("#StatementGrid").kendoGrid({
            columns: [
                { field: "TransactionDate", title: "Date" },
                { field: "TransactionNumber", title: "Transaction Number" }
            ],
            dataSource: {
                data:lines
                //data:lines2 //this does not work
            }
        });

    });
</script>

【问题讨论】:

    标签: jquery asp.net-mvc data-binding datagrid kendo-ui


    【解决方案1】:

    可以 Json 编码您的模型并将您的 JavaScript 行变量设置为等于该值,如下所示:

    @model IEnumerable<MyCustomerModel>
    
    
    <div id="StatementGrid"></div>
    <script>
        $(document).ready(function() {
    
            var lines = @Html.Raw(Json.Encode(Model))
    
            var grid = $("#StatementGrid").kendoGrid({
                columns: [
                    { field: "TransactionDate", title: "Date" },
                    { field: "TransactionNumber", title: "Transaction Number" }
                ],
                dataSource: {
                    data:lines
                }
            });
    
        });
    </script>
    

    您必须设置日期数据类型和格式,但它会起作用。话虽如此,我绝对不推荐这种方法。相反,我会在以下链接中查看有关如何使用远程或本地数据进行绑定的 Telerik 文档,并遵循他们的指导:

    http://demos.telerik.com/kendo-ui/web/grid/remote-data.html

    http://demos.telerik.com/kendo-ui/web/grid/local-data.html

    【讨论】:

    • 谢谢肖恩,这行得通。顺便说一句,您能否详细说明为什么这种方法不是可接受的方法?是不是因为它不允许在网格上进一步分页/排序/过滤?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-24
    • 2012-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多