在angular-ui-grid版本3.0.0-rc.21中,如果将scrollToFocus()调用到网格中的一个单元格并且enableCellEditOnFocus设置为true,则会将光标移动到该单元格,并且可以立即对其进行编辑。在3.0.7版本中,这在某些情况下不再有效(见下文)。
我在导航(选项卡)事件后调用scrollToFocus()。它会检查某些单元格的值,并根据特定条件将用户跳转到下一行。但是,如果用户在没有scrollToFocus()的情况下选中的单元格是可编辑的,那么我认为它会发送endEdit事件,并且用户关注的单元格不再可编辑。
如果用户选中的单元格不可编辑,则scrollToFocus()可以正常工作。
请参阅Plunker,其中包含如何证明问题的说明。 http://plnkr.co/edit/bV9CYdHEEksvRtFUglhr?p=preview
基本上,这一行显示了问题
{ name: 'name2', displayName: 'Name2 (editable)', width: '20%', enableCellEdit: true },
如果这条线是这样的,那么一切正常
{ name: 'name2', displayName: 'Name2 (editable)', width: '20%', enableCellEdit: false },