Kendo UI Grid会在排序时触发创建事件

时间:2016-12-23 07:08:30

标签: javascript kendo-ui grid crud

https://jsfiddle.net/sshetye08/1uh6m6wj/4/

重现的步骤。

  1. 点击“添加新记录”。

  2. 点击任意列的排序图标。

  3. 观察网格数据。

  4. 错误:虽然我没有点击“保存”图标,但记录已保存。

    有没有人对此有任何解决方案。

    的index.html

    <base href="http://demos.telerik.com/kendo-ui/grid/editing">
    <body>
        <div id="example">
            <div id="grid"></div>
        </div>
    </body>
    

    的script.js

    $(document).ready(function () {
                        var crudServiceBaseUrl = "//demos.telerik.com/kendo-ui/service",
                            dataSource = new kendo.data.DataSource({
                                transport: {
                                    read:  {
                                        url: crudServiceBaseUrl + "/Products",
                                        dataType: "jsonp"
                                    },
                                    update: {
                                        url: crudServiceBaseUrl + "/Products/Update",
                                        dataType: "jsonp"
                                    },
                                    destroy: {
                                        url: crudServiceBaseUrl + "/Products/Destroy",
                                        dataType: "jsonp"
                                    },
                                    create: {
                                        url: crudServiceBaseUrl + "/Products/Create",
                                        dataType: "jsonp"
                                    },
                                    parameterMap: function(options, operation) {
                                        if (operation !== "read" && options.models) {
                                            return {models: kendo.stringify(options.models)};
                                        }
                                    }
                                },
                                batch: true,
                                pageSize: 20,
                                schema: {
                                    model: {
                                        id: "ProductID",
                                        fields: {
                                            ProductID: { editable: false, nullable: true },
                                            ProductName: { validation: { required: true } },
                                            UnitPrice: { type: "number", validation: { required: true, min: 1} },
                                            Discontinued: { type: "boolean" },
                                            UnitsInStock: { type: "number", validation: { min: 0, required: true } }
                                        }
                                    }
                                }
                            });
    
                        $("#grid").kendoGrid({
                            dataSource: dataSource,
                            sortable: true,
                            navigatable: true,
                            pageable: true,
                            height: 550,
                            toolbar: ["create", "save", "cancel"],
                            columns: [
                                "ProductName",
                                { field: "UnitPrice", title: "Unit Price", format: "{0:c}", width: 120 },
                                { field: "UnitsInStock", title: "Units In Stock", width: 120 },
                                { field: "Discontinued", width: 120 },
                                { command: "destroy", title: "&nbsp;", width: 150 }],
                            editable: true
                        });
                    });
    

1 个答案:

答案 0 :(得分:0)

记录未保存,只会添加到网格中。实际上有一个错误使得“脏”注释(小的红色三角形)在排序后消失,但是如果单击“取消更改”按钮,添加的行将被删除,而行将保存为“保存” “更改”按钮将保留。

相关问题