Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.06.2016, 10:03
Новичок на форуме
Отправить личное сообщение для edd1977 Посмотреть профиль Найти все сообщения от edd1977
 
Регистрация: 02.06.2016
Сообщений: 6

jgGrid - getRowData() возвращает пустой объект
Помогите разобраться, если верить описанию, то getRowData(rowId|ничего) должна возвращать объект со значениями найденной строки (имя свойства: значение) или массив таких объектов для всех строк. Однако, в моем примере, даже вызов ф-ии без параметра, дает пустой объект. Что делаю не так:
...
datatype: "json",
treeGrid: true,
ExpandColumn: "Name",
treeGridModel: 'nested',
colNames: ['Наименование', 'Имя группы', 'Id родителя', 'Ссылка на справочник'],
colModel: [
{ name: 'Id', index: 'Id', width: 100, sortable: true, key: true},
{ name: 'Name', index: 'Name', width: 200, sortable: true, editable: true },
{ name: 'ParentId', index: 'ParentId', width: 100, sortable: true, hidden: true },
{ name: 'Reference', index: 'Reference', width: 200, sortable: true, hidden: true }
],
...
ondblClickRow: function (rowId, iRow, iCol, e) { // по двойному нажатию будем менять содержимое правой части.

var rowD = $('tblTreeRefs').jqGrid("getRowData", rowId);
...

Да, в примере дерево, модель nested, все проиндексировано, все отображается правильно. Может данная функция не работает с деревьями? Такой информации не нашел. Сверял значения параметра roeId со значением в колонке Id (оно ключ) - все передается точно.
Ответить с цитированием
  #2 (permalink)  
Старый 02.06.2016, 10:17
Новичок на форуме
Отправить личное сообщение для edd1977 Посмотреть профиль Найти все сообщения от edd1977
 
Регистрация: 02.06.2016
Сообщений: 6

Тему можно удалять!!!

Ответ прост - не указан знак '#' в селекторе. Все заработало.
Ответить с цитированием
  #3 (permalink)  
Старый 02.06.2016, 10:21
Новичок на форуме
Отправить личное сообщение для edd1977 Посмотреть профиль Найти все сообщения от edd1977
 
Регистрация: 02.06.2016
Сообщений: 6

Пока тема висит, такой вопрос. Начал пробовать другие вариант, например через свойство data таблицы и метода массива filter().

rowD = $('#tblTreeRefs').getGridParam("data").filter(func tion (item) {
return item.Id == rowId;
});
var referenceRef = "";
if (rowD.length > 0)
{
referenceRef = rowD[0].Reference;
}

Результат аналогичный, в принципе, пойдет такой вариант для поиска данных в массиве по какому либо из полей?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как работает оператор new когда функция-конструктор что-то возвращает ? olek Общие вопросы Javascript 2 06.03.2011 12:17