Как сохранить изменения, внесенные в таблицу данных, после поиска в таблице данных - PullRequest
0 голосов
/ 09 июля 2019

В настоящее время я работаю с данными. В этой таблице данных мы можем изменить данные некоторых столбцов. Но проблема в том, что, как только пользователь изменяет данные, и это делает взаимодействие с данными, то есть «search, numberDisplay, ...», отображаемые данные соответствуют данным запроса AJAX.

Я нахожусь на 1.11.1 версии "Jquery" и 1.9.4 для "dataTables"

Вот мой код:

$(document).ready(function(){
    var listeRespPosePlv = $('#listeRespPosePlv').val();
    listeRespPosePlv = JSON.parse(listeRespPosePlv);

    var listeRespPoseFormatted = [];

    $(listeRespPosePlv).each(function(i, v){
        listeRespPoseFormatted.push({'value': v.id_responsable_pose_plv, 'label': v.libelle}); 
    });

    $('#attribution_pose')[0].currentDataTable = $('#attribution_pose').dataTable({
        "bProcessing": true,
        "bServerSide": true,
        "bStateSave": true,
        'sAjaxSource': Router.url('campagne-plv-attribution'),
        'aLengthMenu': [
            [10, 25, 50, 1000, -1],
            [10, 25, 50, 1000, "All"]
        ],
        'iDisplayLength': 1000,
        'fnServerParams' : function( aoData ) {
            var idCampagnePlv = $('#id_campagne_plv').val();
            aoData.push( { 'name': 'id_campagne_plv', 'value': idCampagnePlv } );
        },
        'fnDrawCallback': function(oSettings){
            $('.datepicker').datepicker();

            var table = this.fnGetData();

            var test = $('#attribution_pose tbody tr');

            for(var i = 0; i < table.length; i++){
                for(var j = 0; j < table[i].length; j++){
                    if(table[i][j].localeCompare(test[i].cells[j].children[0].outerHTML) !== 0){
                        console.log('Diff');
                    }else{
                        console.log('Ok');
                    }
                }
            }
        },
        'oLanguage': {
            'sUrl': Constante.get('base_full_url')+'assets/vendor/datatables/french.json'    
        }
    }).columnFilter({
        sPlaceHolder: "head:before",
        aoColumns: [
            { type: "text" },  
            { type: "text" },        
            { type: "text" },  
            { type: "text" },
            { type: "select" , values: listeRespPoseFormatted},
            { type: "text" },
            { type: "text" },
            { type: "text" },
            null,
            null,
            null,
            null,
            { type: "text" }
        ]
    });
});

Как мне этого избежать?

Спасибо за вашу помощь.

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