Ответ 1
Вы можете сначала проверить селекторы. если они верны, вы можете попытаться загрузить свою страницу или воспроизвести проблему на jsbin.com.:)
У меня есть jqGrid 3.5 (полный), в основном работающий. Я получаю данные с помощью опции multi-select. Одна часть, с которой я не могу работать, - это получение выбранных строк. Состояние docs:
Чтобы получить выбранные строки, мы можем использовать метод getGridParam (selarrrow). Используя наш пример, мы можем написать это:
.JQuery ( "# grid_id" ) getGridParam ( 'selarrrow');
который вернет массив с выбранными строками (т.е. [ "11", "9" ] из рисунка выше). Значения в массиве - это идентификатор выбранных строк.
Это не работает и возвращает значение undefined (да, у меня есть строки). У меня также есть xmlreader: id setup в моей конфигурации сетки.
Может ли кто-нибудь указать мне направление на просмотр? Я пробовал все, что мог придумать безрезультатно.
UPDATE: redsquare был прав относительно неверных селекторов. мой содержащий div имел тот же идентификатор, что и сетка, я заметил это, когда я пошел проверять свой код установки, а селектор был table#results
изменен, и все это работает. Спасибо всем. Если вы опубликуете ответ redsquare, я приму его, потому что это правильный ответ.
Вы можете сначала проверить селекторы. если они верны, вы можете попытаться загрузить свою страницу или воспроизвести проблему на jsbin.com.:)
Попробуйте это, он вернет массив идентификаторов выбранных строк.
var s;
s = jQuery("#yourGridName").jqGrid('getGridParam','selarrrow');
alert(s);
var rowKey = jQuery("#yourGridName").jqGrid('getGridParam','selrow');
var rowObject = jQuery('#yourGridName').getRowData(rowKey);
Это также даст сведения о строках и обычным образом. оператора вы можете получить значение столбца.
Вы должны ссылаться не на объект jQuery, а на jqGrid itseft.
Итак, во время инициализации сетки вы пишете код как:
var myGrid = $("#list")..jqGrid(....);
И в обработчике событий, если вы хотите получить идентификаторы выбранных строк, вам нужно написать:
var rows = myGrid.getGridParam('selarrrow');
Другой способ получить выбранные строки: jQuery('#grid').jqGrid('getGridParam','selarrrow');