0

我有 Kendo Grid,我正在向 kindo 网格添加自定义数据属性。Kendo 网格的元素属性是网格的 jQuery 实例。

kendoGrid.element.data("filtersLoaded_Name", true);
kendoGrid.element.data("filtersLoaded_AccountNumber", true);

在快速观看中,我看到添加了属性 在此处输入图像描述

然后我尝试使用通配符语法查找和删除这些数据属性

   kendoGrid.element.find("[data^=filtersLoaded]").remove();

但是,find 方法返回零个元素

在此处输入图像描述

4

1 回答 1

0

不幸的是,没有一个单一的解决方案,但这是可能的。这个想法是获取所有附加的数据属性,检查每个属性以获取所需的起始字符串,然后删除它们。您可以使用jquery 方法,而不是使用findand 。此方法不接受通配符,因此需要执行几个额外步骤:removeremoveData

var grid = $("#grid").data("kendoGrid");
var data = grid.element.data();
var keys = $.map(data , function(value, key) { return key; });

for (i = 0; i < keys.length; i++) {
    if (keys[i].startsWith('filtersLoaded')) {
        grid.element.removeData(keys[i]);
    }
}
于 2020-07-10T17:09:23.340 回答