Ответ 1
Используйте следующий код:
beforeSelectRow: function(rowid, e) {
return false;
}
Спасибо,
Update: Я смог "взломать" реализовать что-то, что кажется временным исправлением. Мне это совсем не нравится, и было бы идеально, как лучшее решение, если есть...
Я обнаружил, что если передать опцию
onSelectRow: function(rowid, status) {
$('#'+rowid).removeClass('ui-state-highlight');
}
когда я создаю экземпляр jqGrid, я могу выделить выделение, когда оно добавлено.
Есть ли другой, более идеальный способ сделать это?
Используйте следующий код:
beforeSelectRow: function(rowid, e) {
return false;
}
Если у вас, как и у меня, есть gazillion jqGrids и вы не хотите переопределять onSelectRow для каждого из них, вот глобальная версия решения Reigel, которая хорошо работала для меня:
jQuery.extend(jQuery.jgrid.defaults, {
onSelectRow: function(rowid, e) {
$('#'+rowid).parents('table').resetSelection();
}
});
Я полагаю, вы могли бы обратиться к этому в CSS напрямую. Просто переопределите значения для ui-state-highlight для вашей конкретной таблицы
#table_id tr.ui-state-highlight {
border: inherit !important;
background: inherit !important;
color: inherit !important;
}
#table_id tr.ui-state-highlight a {
color: inherit !important;
}
#table_id tr.ui-state-highlight .ui-icon {
background-image: inherit !important;
}
Я использовал значение inherit
как пример - вам, скорее всего, придется скопировать некоторые значения из вашего theme.css, чтобы сделать эту работу.
попробовать:
onSelectRow: function(rowid, status) {
$("#grid_id").resetSelection(); //Resets (unselects) the selected row(s). Also works in multiselect mode.
}
вы можете читать документацию здесь. Надеюсь, это поможет вам...