2016-10-03 7 views
0

Я использую структуру JQGrid для отображения данных сетки. Есть две сетки, и данные будут перетаскиваться из сетки 1 в сетку2 и из сетки2 в сетку 1. Я хочу получить обновленные данные сетки 2 после удаления или добавления некоторых элементов в сетку. Пожалуйста, помогите мне. Я новичок в этой структуре.Получить обновленные данные сетки с помощью JQGrid

код:

HMTL:

<input id="updateName" type="button" onclick="updateName();" value="Update"> 

function updateName(){ 
    var selectedData = $("#jqGrid2").jqGrid("getGridParam", "data"); 
    var selData = $.map(selectedData, function (item) { return item.selectedData; }); 

.... 
} 

colmodel:

jQuery("#jqGrid2").jqGrid({ 
        datatype: "local", 
        data: datagrid2, 
        rowNum :200, 
        width : 450, 
        height: 100, 
        shrinkToFit: false, 
        forceFit: true, 
        colModel: [ 
         { label: 'Student Name', name: 'selectedData', index: 'selectedData', width: 450, align: 'left'} 
        ], 
        gridComplete: function(){ 
             jQuery('.ui-jqgrid-bdiv').css({'height':'200px', 'max-height':'200px'});  
         jQuery('.ui-th-column').css({'background':'#F2F2F2','height':'25px','text-align':'left'}); 
         jQuery('.ui-jqgrid tr.jqgrow td').css({'height':'20px'}); 
         $(this).find(">tbody>tr.jqgrow").removeClass("myAltRowClassEven myAltRowClassOdd"); 
         $(this).find(">tbody>tr.jqgrow:odd").addClass("myAltRowClassEven"); 
         $(this).find(">tbody>tr.jqgrow:even").addClass("myAltRowClassOdd"); 
         $('.ui-corner-all').addClass('ui-zero-corner'); 
        }, 
        onSortCol: function (index, columnIndex, sortOrder) { 
         $(this).find(">tbody>tr.jqgrow").removeClass("myAltRowClassEven myAltRowClassOdd"); 
         $(this).find(">tbody>tr.jqgrow:odd").addClass("myAltRowClassEven"); 
         $(this).find(">tbody>tr.jqgrow:even").addClass("myAltRowClassOdd"); 
         //return 'stop'; 
        } 

       }); 

       jQuery("#jqGrid1").jqGrid('gridDnD',{connectWith:'#jqGrid2'}); 
       jQuery("#jqGrid2").jqGrid('gridDnD',{connectWith:'#jqGrid1'}); 

Я использую приведенный выше код, чтобы получить данные. Но проблема заключается в том, что при добавлении данных все в порядке, как и ожидалось. Но при удалении данных, т. Е. Перетаскивании в другой столбец (Grid1), данные должны быть удалены. Если я удалю 1 продукт, это будет хорошо, но если я попытаюсь удалить все элементы в сетка сразу я получаю значения из grid2.

+0

Пожалуйста, включите в каждый ваш вопрос о jqGrid информацию о версии jqGrid, которую вы используете (или которую вы можете использовать), и fork jqGrid ([free jqGrid] (https://github.com/free-jqgrid/jqGrid), коммерческий [Guriddo jqGrid JS] (http://guriddo.net/?page_id=103334) или старый jqGrid в версии <= 4.7). Если вы новичок в jqGrid, я бы рекомендовал вам использовать последнюю (в настоящее время 4.13.4) версию бесплатного jqGrid. Это развилка, которую я развиваю. Он совместим со старым jqGrid 4.7. Посмотрите на информацию из [здесь] (https://free-jqgrid.github.io/getting-started/index.html). – Oleg

+0

Я использую версию JQGrid 4.5.2 @Oleg – SRM

+0

@Oleg Я добавил код и объяснение. Нужна помощь. Спасибо – SRM

ответ

0

Я полагаю, что вы используете datatype: "local" в обеих сетках. Вы можете получить текущие (измененные) данные за счет использования $("#gridid").jqGrid("getGridParam", "data"), где #gridid должен быть селектором id сетки1 или сетки2.

+0

Привет. Спасибо за ответ. Я использую этот код, но возвращает объект, который мне нужен, в JSON. Я получаю null, если я это сделаю. @Oleg – SRM

+0

@SRM: Извините, но вам сложно следовать за вами. Важно * где * в вашем коде вы помещаете '$ (" # gridid ​​"). JqGrid (" getGridParam "," data ")'. Не могли бы вы добавить текст своего вопроса с кодом JavaScript, который показывает ваше текущее использование '.jqGrid (« getGridParam »,« data »)'? Лучше было бы, если бы вы предоставили демоверсию, которая воспроизводит вашу текущую проблему. – Oleg

+0

Я добавил код и объяснение. Пожалуйста, нужна помощь. – SRM

Смежные вопросы