gpt4 book ai didi

javascript - Kendo UI TreeView 节点在拖放后丢失自定义分配的 HtmlAttributes

转载 作者:行者123 更新时间:2023-11-30 05:54:35 28 4
gpt4 key购买 nike

我已经为我的每个树节点分配了一个 ID 属性,以保留我在 Controller 上需要的信息,以便我可以保存修改后的层次结构。

但是,当我删除一个节点时,Id 属性将被删除。我不确定这是否是一个错误,我是否做错了什么,或者这是否按开发人员的预期工作。

我附上了我的警报窗口的屏幕截图(下面的代码),以及从 Firebug 生成的 Html 的两张截图。一张在 Drop 之前,一张在 Drop 之后。

@(Html.Kendo().TreeView()
.Name("CompanyHierarchy")
.Events(events => events
.DragEnd("HierarchyDragEnd")
)
.BindTo(Model.Hierarchy as System.Collections.IEnumerable, mappings =>
{
mappings.For<Models.EnterpriseChildModel>(binding => binding
.Children(c => c.Children)
.ItemDataBound((item, c) =>
{
item.Text = c.Name;
item.HtmlAttributes.Add("Id", c.EnterpriseID.ToString());
})
);
})
.DragAndDrop(true))

Alert Window missing ID Firebug showing ID on Html BEFORE Drop Firebug showing lack of ID in Html AFTER Drop

最佳答案

我有一个解决方案。它是由 Telerik 团队成员在 Kendo 论坛上提供的。我也会在下面发布我修改过的代码:

The HtmlAttributes are not persisted after drag&drop operations. In this particular case, it is best to add the Id to the item and access it through the dataItem method on the client.

修改后的代码:

为dataItem添加ID:

    @(Html.Kendo().TreeView()
.Name("CompanyHierarchy")
.Events(events => events
.DragEnd("HierarchyDragEnd")
)
.BindTo(Model.Hierarchy as System.Collections.IEnumerable, mappings =>
{
mappings.For<Models.EnterpriseChildModel>(binding => binding
.Children(c => c.Children)
.ItemDataBound((item, c) =>
{
item.Text = c.Name;
item.Id = c.EnterpriseID.ToString();
})
);
})
.DragAndDrop(true)
)

从dataItem获取信息:

        function HierarchyDragEnd(e) {
setTimeout(function () {
var originDataItem = $("#CompanyHierarchy").data('kendoTreeView').dataItem(e.sourceNode);
var originNodeId = originDataItem.id;
var originNodeText = originDataItem.text;
var destinationDataItem = $("#CompanyHierarchy").data('kendoTreeView').dataItem(e.destinationNode);
var destinationNodeId = destinationDataItem.id;
var destinationNodeText = destinationDataItem.text;

var dropPosition = e.dropPosition;
}, 100);
}

关于javascript - Kendo UI TreeView 节点在拖放后丢失自定义分配的 HtmlAttributes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12746662/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com