我有一个CellTable,其中包含一堆呈现<input>
标签的单元格。由于CellTable的奇特事件处理,输入之间的标签被打破。标签似乎激发了每个单元格finishEditing
,但这反过来占据焦点,焦点永远不会到达下一个<input>
。
在每个输入上设置tabIndex似乎不会影响行为。
如何恢复常用的标签功能?
答案 0 :(得分:8)
我最近想到了这一点。一旦你找到了魔法,这很烦人,但很简单。
cellTable.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED)
这应该会导致CellTable中的常规标签导航。
答案 1 :(得分:2)
如果您使用任何MVP框架,禁用KeyboardSelectionPolicy可能无法在所有视图上使用。 GWT选择单元格而不是单元格内的输入字段。
以下是我在我的应用程序中使用的解决方案:Adding TAB control to GWT CellTable
答案 2 :(得分:0)
如果您不更改单元格的值,Ben Imp的解决方案可以正常工作,但是如果您更改该值并尝试使用制表符导航到下一个单元格,则会失去焦点,并从视图的第一个元素开始。我还没有找到解决这种不当行为的方法。
答案 3 :(得分:0)
对于那些在将来试图弄清楚如何在更改值时使用Tab键的人,请执行Ben Imp建议然后在您的自定义组件中删除对super.finishEditing的任何引用。在某些情况下,这意味着覆盖finishEditing并使其无效。