手持计算

Calculation in handsontable

我想连接可操作网格中的值。所以,我在 jsfiddle 上找到了一些东西,我正在尝试根据我的情况对其进行调整。
这是 link :

http://jsfiddle.net/9onuhpn7/4/

所以我有 3 列 A、B、C,我试图将它们连接起来并在 "SUM" 列中显示结果,但它不起作用。

正如我所说,这是我从另一个人那里得到的代码,我不理解这一行 if (changes[i][1] === 3) { 如果我把它取下来,它就不再起作用了。如果有人能告诉我这样做的目的是什么

有人可以帮助我吗?

你拿的代码有点奇怪。我对其进行了一些更新,以更好地满足您的需求。

(PS: 我不是 Handsontable 用户)

基本上,问题似乎是您正在侦听更改事件,并且在该更改事件中,您正在进行一些更改。这可能会导致您进入无限事件循环。

if(changes[i][1] === 3)

就是为了防止这个循环。基本上,如果更改发生在坐标 [i,1] 的 'SUM' 单元格上,那么,我们不想再次触发更改(因为它刚刚发生)。

看看这段代码:http://jsfiddle.net/9onuhpn7/6/

调用 setDataAtCell() 时,您可以为更改关联一个名称。 此名称将是 afterChange 侦听器的第二个参数。

您只需在事件的源名称上使用一个条件来触发或不触发它。