Динамическое добавление идентификатора в строку таблицы с помощью jQuery?
Я использую jsgrid для создания сетки данных на стекле в веб-приложении, и теперь мне нужно добавить идентификатор для каждой строки, чтобы можно было выбрать строку и передать значение ключа на серверную часть.
Код, который я пытаюсь использовать с идентификатором, показанным ниже, мне удалось подтвердить, что значения присутствуют для каждой записи fieldData (это объект, в котором хранятся данные строки.) Функция запускает цикл for, используя переменную iRDG2 для цикла через строки таблицы и URN - пару ключей, которая относится к уникальному номеру ссылки;
$('tbody').children()[iRDG2].attr('id', fieldData[iRDG2].URN);
К сожалению, движок JS в браузере говорит мне, что Object не поддерживает свойство, возможно, поскольку в строках есть ячейки.
Любое руководство с благодарностью.
2 ответа
Вы можете исправить свой код следующим образом:
$('tbody').children().eq(iRDG2).attr('id', fieldData[iRDG2].URN);
Но если вы изменяете строки с помощью внешнего кода, вы должны убедиться, что это сделано на onRefreshed
Перезвоните. Поскольку содержимое сетки может быть обновлено, идентификаторы будут потеряны.
Вероятно, лучшая альтернатива будет использовать rowClass
возможность назначить уникальный класс для каждой строки, например:
rowClass: function(item, itemIndex) { return "row-" + item.ID },
Таким образом, вы можете ссылаться на строку этим классом: $(".row-123")
Спасибо за все предложения, но в итоге я пошел по маршруту, где строка обновила переменную со значением первого дочернего элемента строки вместо того, чтобы работать в первый раз