jqGrid имеет очень ограниченную поддержку навигации по клавиатуре. Я согласен с тем, что описанная вами проблема существует в текущей (v. 4.3.1) реализации jqGrid. Так что +1 от меня за вопрос.
Чтобы устранить проблему, я предлагаю следующее
$('#grid').closest('.ui-jqgrid-view')
.find('.ui-jqgrid-htable .ui-search-toolbar .ui-th-column')
.find('input, select')
.focus(function (e) {
var $header = $(e.target).closest('.ui-jqgrid-hdiv'),
$body = $header.siblings('.ui-jqgrid-bdiv');
setTimeout(function () {
// we syncronize the scroll in the separate thread
// to be sure that the new scrolling value
// already set in the grid header
$body[0].scrollLeft = $header[0].scrollLeft;
}, 0);
});
Например, setTimeout
требуется в веб-браузере Google Chrome.
См. Демо здесь .