Я хочу объединить значения из удобной сетки. Итак, я нашел что-то на jsfiddle, и я пытаюсь адаптировать его в моем случае.
Вот ссылка:Расчет в режиме handsontable
http://jsfiddle.net/9onuhpn7/4/
Поэтому у меня есть 3 колонки A, B, C, и я пытаюсь объединить их и отобразить результат в колонке «SUM», но это не работает.
Как я уже сказал, это код, который я взял у другого парня, и я не понимаю эту строку if (changes[i][1] === 3) {
, и если я ее отниму, это больше не работает. Если кто-то может сказать мне, в чем цель этого.
Кто-то может мне помочь?
Насколько я могу судить (я не являюсь потенциальным экспертом), эта строка имеет двойную функцию: она не выполняется, если отредактирован третий столбец (изменения [i] = [строка, столбец, значение oldvalue, newvalue ], поэтому изменения [i] [1] содержат измененный столбец), а также гарантирует, что изменения не являются рекурсивными, потому что 'hot.setDataAtCell (0, 3, value, 'changed');', похоже, также запускает обмен , –
@ Me.Name Итак, расчет будет происходить только при изменении второй ячейки? – Erlaunis
Не совсем, это произойдет, если информация о смене ячейки не является третьим столбцом индекса, поэтому в этом случае это произойдет для столбцов с индексами 0,1 и 2. Обратите внимание, что, поскольку 'beforeChange' используется в комбинации с live 'getDataAtCell', значения для суммы всегда будут версией позади. Проделайте какую-нибудь работу: что-то вроде этого: http://jsfiddle.net/9onuhpn7/7/ будет работать, если столбец суммы - последний столбец –