2

我有一个剑道 ui 树视图。我想在双击事件时更新或删除剑道树视图的节点。当我双击树视图节点时,它将进入文本框中的编辑模式。然后我想附加一个关闭按钮图标,当我点击它时,我想删除节点和相关的子节点。我已经定义了类似的代码

        var treeview = $("#treeview").kendoTreeView({
            template: kendo.template($("#treeview-template").html()),
            select: onSelect,
            loadOnDemand: true,
            dataSource: dataSource, // dynamic datasource
            dataTextField: ["categoryname"]
        }).on('dblclick', '.child', function(event)
        {
            $(this).siblings(".sri").show();
            $target = $(event.target);
            alert("event" + event);
            $target.editable(function (value, settings)
            {                  
                return value;
            },
            {
                event: 'dblclick',
                cssclass: 'treeInlineEdit'
            });

            $target.trigger('dblclick', [event]);

        }).data("kendoTreeView"); 

我的模板就像

      <script id="treeview-template" type="text/kendo-ui-template">

            <span class='child'>#: item.categoryname #</span>
            <a class='showcloseicon' onclick='sri(#:item.categoryid#)' name='#:item.categoryid#' style='color:blue;display:none'>X</a>

</script>

但是代码不能正常工作。我需要做哪些改变。

4

1 回答 1

3

这可能迟到了,但我也在寻找 KendoUI TreeView DoubleClick 事件。环顾四周,没有什么是直截了当的。通过一些修补,我能够在下面的代码中得到我需要的东西。我省略了所有正常的数据源绑定和设置以及标准树视图设置。在设置树视图的代码之后,我有以下代码:

$("#treeView .k-in").on("dblclick", function (e) {
  var node = $(e.target).closest(".k-item");
  if ($("#treeView").getKendoTreeView().dataItem(node).items.length == 0) {
    // This means you are on an Item that has no Child items
    // Use $("#treeView").getKendoTreeView().dataItem(node) to get values from
    // the dataitem
  }
});

这就是我所需要的一切。子节点项上的双击事件。希望它可以帮助某人。

于 2014-12-12T14:26:41.643 回答