JQuery: поиск атрибутов данных с использованием подстановочного знака - PullRequest
0 голосов
/ 09 июля 2020

У меня есть Kendo Grid, и я добавляю пользовательские атрибуты данных в kindo grid. Свойство элемента сетки Kendo - это jQuery экземпляр сетки.

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

при быстром просмотре я вижу, что атрибуты добавлены enter image description here

Then i am trying to find and remove these data attributes using wildcard syntax

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

However, find method returns zero elements

введите описание изображения здесь

1 Ответ

0 голосов
/ 10 июля 2020

К сожалению, здесь нет однострочного решения, но это возможно. Идея состоит в том, чтобы получить все добавленные атрибуты данных, проверить каждый на наличие желаемой начальной строки, а затем удалить их. Вместо использования find и remove вы можете использовать метод removeData jquery. Этот метод не принимает подстановочные знаки, поэтому необходимо выполнить пару дополнительных шагов:

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]);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...