在掌上电脑计算

时间:2015-07-22 08:11:50

标签: javascript calculated-columns handsontable

我想从一个双手网格中连接值。所以,我在jsfiddle上找到了一些东西,我试图在我的情况下调整它 这是链接:

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

所以我有3列A,B,C和我尝试连接它们并在" SUM"中显示结果。专栏,但它不起作用。

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

有人可以帮我吗?

1 个答案:

答案 0 :(得分:2)

你拍的代码有点奇怪。我更新了一下,以便更好地满足您的需求。

(PS:我不是Handsontable用户)

基本上,问题似乎是你正在听一个改变事件,而在这个改变事件中,你正在做一些改变。这可能会导致您无限循环。

该行

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

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

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

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

您只需要在事件的源名称上使用条件来触发它。