Handsontable: фильтр данных сбрасывает заголовки строк - PullRequest
0 голосов
/ 19 сентября 2019

В моем проекте laravel я использую плагин рук на столе на основе jquery.Это очень быстро реализовано в моем проекте.Я создал 5 столбцов в горячей таблице, а также добавил функцию поиска по конкретным столбцам.Все работает хорошо, даже я выполняю вычисления на afterChange, чтобы вычислить общую сумму путем умножения price на unit.Расчеты работают нормально, если я не использую фильтр данных.

Вот снимок экрана:

enter image description here

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

Использование логики для расчета:

afterChange: function(change,source){
        console.log(change);
        if(source === 'loadData'){
            return;
        }
        var hotInstance = $("#hot-table").handsontable('getInstance');
        if(change[0][1] == 'unit' && change[0][3] != ''){
            let data = hotInstance.getSourceData();
            let calculatedData = data[change[0][0]];
            calculatedData['total'] = calculatedData['price'] * parseInt(change[0][3]);
            data[change[0][0]] = calculatedData;
            hotInstance.loadData(data);
        }
        $('.chargesList').val(JSON.stringify(hotInstance.getSourceData()));
    },

Мои данные выборки:

enter image description here

Теперь, когда я фильтрую данные, плагин фильтра просто сбрасывает индексацию строки заголовка, но я обновлял данные от имени индекса строки заголовка, поэтому я думаю, что именно поэтомуне определяет, какой индекс строки они должны обновить.

enter image description here

Может кто-нибудь сказать мне, как я могу это сделать?

...