Jqgrid, устанавливающий выбор в Editform - PullRequest
0 голосов
/ 07 декабря 2011

Вот в чем дело, у меня есть JqGrid со столбцом («Статус») с 3 возможными числами, которые я форматирую (и не форматирую) для 3 разных значков в сетке. Но мне нужно отформатировать эти числа как выбранный тип с выбранной опцией, когда я в режиме редактирования. Я сделал это, но комбо в Editform показывает без какого-либо предварительно загруженного выделения из сетки, даже если оно имеет значение. Любая строка, которую я выбираю в сетке, прибывает в EditForm с тем же значением комбо. Но если я выберу любую опцию в Editform и сохраню ее, она будет обновляться нормально. Чего мне не хватает?

Colmodel определение статуса:

colModel:[ 
    {name:'status_solicit_vale',index:'status_solicit_vale',width:120, align:'center', formatter:'iconFmatter', unformat:'iconUnFmatter',
            stype:'select', editable: true,  searchoptions:{value:":Todos;0:Aguardando;1:Autorizado;2:Rejeitado"}, edittype:"select", 
            editoptions:{value:"0:Aguardando;1:Autorizado;2:Rejeitado"} }
        ],  

Определение EditOptions:

{
        Modal:true,
        reloadAfterSubmit : true,
            recreateForm : true,
            closeAfterEdit : true,
        closeAfterAdd : true,
        reloadAfterSubmit: true,
        checkOnSubmit: true, 
        closeAfterEdit: true,
        bClose: "Fechar",
        saveData: "Confirma alteração?",
        bYes : "Sim",
        bNo : "Não",
        bExit : "Cancelar",
        afterSubmit: function () {
                jQuery("#gridJson").jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid');
                return [true,'']; // no error
        }
}, // EDIT OPTIONS

Формат и неформат для значков в сетке:

iconFmatter : function(cellvalue, options, rowdata) {
    switch(cellvalue){

        case 0: var html = '<div class="ui-state-attention ui-corner-all" style="display:table"><span class="ui-icon ui-icon-alert" title="Aguardando" id=0></span></div>';
        break;
        case 1: var html = '<div class="ui-state-check ui-corner-all" style="display:table"><span class="ui-icon ui-icon-check" title="Autorizado" id=1></span></div>';
        break;
        case 2: var html = '<div class="ui-state-error ui-corner-all" style="display:table"><span class="ui-icon ui-icon-closethick" title="Rejeitado" id=2></span></div>';
        break;
        default: html = "ERRO";
        break;

     }
     return html;
    },      
    iconUnFmatter : function(cellvalue, options, cell) {    
        return $('span', cell).attr('id');
    }

Jqgrid select

1 Ответ

0 голосов
/ 08 декабря 2011

Решено!

Jqgrid не отформатировал иконку. Мне пришлось поместить свою функцию unformat в свойство unformat "colmodel", и она работала нормально.

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