удаление строки в jqgrid и «Состояние ошибки:« Не найдено ». Код ошибки: 404» - PullRequest
1 голос
/ 14 января 2011

У меня проблема с удалением строки в JQGrid. У меня есть редактируемая таблица, в которой можно изменять все строки на стороне клиента, а затем сохранять все в конце изменения. Она работает нормально, но у меня есть некоторые проблемы с удалением строки, потому что она отправляется методом post на фиктивную страницу по умолчанию функциональность JQGrid и у меня есть ошибка:

Состояние ошибки: «Не найдено». Код ошибки: 404 94022 Удалить выбранные записи?

Я полагаю, это потому, что он ожидает ответа о состоянии операции удаления. кто-нибудь знает, как я могу удалить строку без отправки чего-либо или заставить возвращение статуса с некоторым кодом? Заранее спасибо.

код моей таблицы:

    jQuery('#listBody').jqGrid({
       url:'sow.ajax.php',
    datatype: 'xml',
       colNames:['Pl Section','Id Document','Id Service','Code','Quantity'],
       colModel:[
         {name:'id_parent',index:'id_parent',hidden:false},
         {name:'id_document',index:'id_document',hidden:true},
         {name:'id_service',index:'id_service',hidden:true},
         {name:'code',index:'code', width:80},
         {name:'quantity',index:'quantity', width:80, align:\"right\", sorttype:\"int\", editable: true,editrules:{number:true}}
       ],
     rownumbers:true,
     rowNum:100,
     height:500,
     cellEdit: true,
     cellsubmit: 'clientArray',
     multiselect: true,
     gridComplete : function(){
     var ids = $('#listBody').jqGrid('getDataIDs');
     for(var i=0;i < ids.length;i++){
        var rowdata=jQuery('#listBody').jqGrid ('getRowData', ids[i]);
        service_sow[rowdata['id_service']]=i;
     }

  },
    editurl:'ClientArray',
    rowList:[10,20,30],
    sortname: 'id',
    viewrecords: true,
    sortorder: "desc",
    loadonce: true,
    caption: "Document body",
    pager: '#plistBody'
});

jQuery('#listBody').jqGrid('navGrid','#plistBody',{edit:false,add:true,del:true,search:false});

$('#dedata').click(function(){
  var gr = jQuery('#listBody').jqGrid('getGridParam','selrow');
  if( gr != null ) jQuery('#listBody').jqGrid('delGridRow',gr,{reloadAfterSubmit:false});
  else alert("Please Select Row to delete!");
});

1 Ответ

2 голосов
/ 15 января 2011

Я нашел это, и, кажется, работает нормально:

$('#del-row')
  .button(
  {
        icons: {
           primary:'ui-icon-trash'
        }
  }
  )
  .click(function() {
                    var selectedRowsJq = new Array();
                var selectedRows = new Array();

                selectedRowsJq=jQuery('#listBody').getGridParam('selarrrow');
                for(var i = 0; i < selectedRowsJq.length; i++)selectedRows[i]=selectedRowsJq[i];
                    for(var i = 0; i < selectedRows.length; i++){
                        //DEBUG//alert(selectedRows[i]);
                        jQuery('#listBody').delRowData(selectedRows[i]);
                    }       
               return false;
  });

Танки всем;))

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