большое спасибо! отличный образец :)

я есть 3 простых вопроса.

У меня есть код, который говорит мне, если на странице присутствует объект jqGrid:

//Check if there is a jqGrid on the page and if present, reloads its data ;)
var jqGrid = $('div.ui-jqgrid-bdiv table');
if (jqGrid.length) {
    //time to reload
    $(jqGrid).trigger('reloadGrid');
}

Я хотел бы найти элемент идентификатора пейджера, если он есть. Есть какой-либо способ сделать это?

Предположим, у меня есть собственный класс в моей таблице jqGrid:

<table id="myGrid" runat="server" class="customclass"></table>
<div id="myGrid_pager" runat="server"></div>

Как я могу динамически проверить наличие пользовательского класса внутри моего jqGrid?

РЕДАКТИРОВАТЬ:

С помощью Олега я смог закодироватьreconfigPermissions() функция, которая показывает / скрывает кнопки добавления, редактирования и удаления по умолчанию. Вот функция:

function reconfigPermissions(gridID) {
    var enableRegistry = CanModifyRegistry();
    var ops = ['#add_' + gridID, '#edit_' + gridID, '#del_' + gridID];
    $.each(ops, function (ix, value) {
        var $td = $(value);
        if (enableRegistry === true) {
            $td.show();
        } else {
            $td.hide();
        }
    });
}

Эта функция вызывается, когда пользователь выбирает другой диапазон дат в поле со списком, определенном в другом месте страницы. Проблема заключается в следующем: если при начальной загрузке сетки пользователь имеет права на период по умолчанию (выбранный в поле со списком), все работает. Вы можете переключать диапазон дат в комбинированном списке, и кнопки появляются и исчезают правильно. К сожалению, если у пользователя нет прав на изначально выбранный период по умолчанию (поэтому первое создание сетки имеет{add: false, edit: false, del: false}) даже переход на период, когда у пользователя есть права, вообще не добавляет кнопок.

Это код, связанный с полем со спискомchange обработчик события

$.ajax({
    url: GetBaseWSUrl() + 'MyWebService.asmx/ChangeCurrentPeriod',
    type: "post",
    dataType: "json",
    async: false,
    data: JSON.stringify({ periodID: $(this).val() }),
    contentType: "application/json; charset=utf-8",
    success: function (data) {
        //Check if there is a jqGrid on the page and if present, reloads its data
        var jqGrids = $('div.ui-jqgrid-bdiv table');
        jqGrids.each(function (ix, jqGrid) {
            var gridID = $.jgrid.jqID(jqGrid.id)
            reconfigPermissions(gridID);
            jqGrid.trigger('reloadGrid');
        });
    }
});

Любое предложение?

Ответы на вопрос(1)

Ваш ответ на вопрос