3

我有一个包含几列的 CellTable,其中两列是 TextInputCells。在更新此单元格中的值时,我进行计算(例如:总计)并设置总行的值。我需要重新绘制 celltable 以立即显示更新的值。我面临的问题是,当用户在第一个文本单元格中输入一个值并按下键盘上的选项卡时,由于重绘了单元格表,因此单元格失去了焦点。

重绘表格时我该怎么做才能不失去焦点?

表结构:

ID         Description   Month1               Month2
expenseId1   Travel      10                    15
expenseId2   Food        40                    50
Subtotal                 50                    65
Misc.                    TextInputCell      TextInputCell
Total                    50                    65

谢谢。

4

3 回答 3

0

No need to redraw the table after calculating total. You can just call dataProvider.refresh() method on the grid. It will refresh your grid.

于 2013-03-13T19:21:24.683 回答
0

你必须调用 setVisibleRange( )celltable

 cellTable.setVisibleRangeAndClearData(cellTable.getVisibleRange(),true); 

你也可以这样做

cellTable.setRowData(0, listOfObjs) // where listOfObjs is your changed data

于 2013-03-14T04:59:57.523 回答
0

这是由于渲染周期而发生的。所以没有可能节省焦点。因为每个渲染周期您的视图对象都不再存在。新的 dom 元素取而代之。

于 2021-01-14T13:23:19.057 回答