jqGrid resuelve la ID del localizador de cuadrícula dinámicamente?

Tengo 3 preguntas simples.

Tengo un código que me dice si un objeto jqGrid está presente en la página:

//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');
}

Me gustaría encontrar el elemento de ID del localizador si hay uno. ¿Hay alguna manera de hacer esto?

Supongamos que tengo una clase personalizada en mi tabla jqGrid:

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

¿Cómo verifico la presencia de customclass dentro de mi jqGrid dinámicamente?

EDITAR

Con la ayuda de Oleg, he podido codificar unreconfigPermissions() función que muestra / oculta los botones predeterminados Agregar, Editar y Eliminar. Aquí está la función:

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();
        }
    });
}

Esta función se llama cuando el usuario selecciona otro rango de fechas en un cuadro combinado definido en otra parte de la página. El problema es el siguiente: si, cuando la grilla se carga inicialmente, el usuario tiene derechos para el período predeterminado (seleccionado en el cuadro combinado), todo funciona. Puede cambiar el intervalo de fechas en el combo y los botones aparecen y desaparecen correctamente. Desafortunadamente, si el usuario no tiene derechos sobre el período predeterminado inicialmente seleccionado (entonces la primera creación de la cuadrícula tiene{add: false, edit: false, del: false}) incluso cambiar a un período en el que el usuario tiene derechos no agrega los botones en absoluto.

Este es el código enlazado al cuadro combinadochange controlador de evento

$.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');
        });
    }
});

¿Cualquier sugerencia

Respuestas a la pregunta(1)

Su respuesta a la pregunta