jQuery: в jqGrid можно изменить порядок кнопок панели инструментов - PullRequest
1 голос
/ 08 ноября 2011

В jqGrid можно ли изменить порядок кнопок по умолчанию на панели инструментов нижнего колонтитула? Я пытаюсь отобразить кнопку «Поиск» перед кнопкой «Удалить». Я прочитал документацию и не нашел упоминаний о ней, но подумал, что может быть простой трюк.

Ответы [ 2 ]

2 голосов
/ 08 ноября 2011

Стандартных опций, позволяющих изменять порядок кнопок на панели инструментов navigator , нет.С другой стороны, ни одна часть кода jqGrid не зависит от порядка, поэтому вы можете изменить порядок кнопок самостоятельно.

Чтобы сделать это, вы должны знать, что идентификаторы кнопок создаются из префикса «add_»,«edit_», «del_», «search_», «refresh_», «view_» и идентификатор сетки.Если идентификатор сетки равен «list», тогда код может быть

$("#list").jqGrid("navGrid", "#pager");
$("#search_list").insertBefore("#del_list");

и он перемещает кнопку поиска из стандартного места

enter image description here

в

enter image description here

В более общем случае, если у вас есть переменная $grid, представляющая $("#list"), код будет

$grid.jqGrid('navGrid', '#pager');
var gridid = $.jgrid.jqID($grid[0].id);
$("#search_" + gridid).insertBefore("#del_" + gridid);

Функция $.jgrid.jqID необходимы только в том случае, если идентификатор сетки может содержать специальные метасимволы, такие как !"#$%&'()*+,./:;<=>?@[\]^``{|}~, которые необходимо экранировать, если они используются в селекторах (см. здесь для получения дополнительной информации).

Соответствующую демонстрацию вы найдете здесь .

1 голос
/ 10 июня 2013

Просто хотел расширить принятый ответ, упомянув, что кнопки inlineNav (в отличие от кнопок navGrid) имеют другую схему именования для id:

gridid ​​+ "_il" + "add", "edit", "save", "cancel"

, поэтому, если gridid ​​= #list, селектор для встроенной кнопки добавления будет $ ('# list_iladd')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...