0

我有一个示例,使用 Backbone.js 添加了一个剑道 ui 网格。在剑道 ui 网格中,我有一个用于删除行的按钮,但这些按钮在移动设备上不起作用。如果我反复按下一个按钮,它有时会起作用。为什么?我在 kendoGrid.columns 中声明了按钮:

{
command: [{
     name: "destroy",
     text: "Remove",
     className: "ob-delete"
}

要删除一行并在单击按钮时执行某些操作:

$(document).on("click", ".grid tbody tr .ob-delete", function (e) {
    var item = grid.dataItem($(this).closest("tr"));
    var check = confirm("Delete");
    if (check) {
        grid.removeRow($(this).closest("tr"));
    }
}); 

完整示例

编辑:

我用的是剑道ui版本:2012.3.1114

4

1 回答 1

1

移动和点击事件不是最好的朋友!

在此代码中,您将单击具有 .ob-delete 类的 Html 元素,这不会触发 Kendo 的内置单击事件。相反,尝试将您的删除方法实现为本演示中显示的自定义命令:http ://demos.kendoui.c​​om/web/grid/custom-command.html

     $(document).ready(function () {
                var grid = $("#grid").kendoGrid({
                    dataSource: {
                       pageSize: 10,
                       data: createRandomData(50)
                    },
                    pageable: true,
                    height: 260,
                    columns: [
                        { field: "FirstName", title: "First Name" },
                        { field: "LastName", title: "Last Name" },
                        { field: "Title" },
                        { command: { text: "View Details", click: showDetails }, title: " ", width: "140px" }]
                }).data("kendoGrid");

                wnd = $("#details")
                    .kendoWindow({
                        title: "Customer Details",
                        modal: true,
                        visible: false,
                        resizable: false,
                        width: 300
                    }).data("kendoWindow");

                detailsTemplate = kendo.template($("#template").html());
            });

            function showDetails(e) {
                e.preventDefault();

                var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
                wnd.content(detailsTemplate(dataItem));
                wnd.center().open();
            }
        </script>

或者如果不需要自定义命令,请尝试本演示中显示的默认删除事件。 http://demos.kendoui.c​​om/web/grid/editing-inline.html

于 2013-02-17T03:11:23.637 回答