我有一个带有文本字段和禁用的“保存”按钮的GWT表单。 当用户开始在文本字段中输入任何内容时,我想启用“保存”按钮。然后单击“保存”按钮应该调用一些save()代码。如果将值更改处理程序添加到文本字段,GWT点击处理程序将被忽略
我加
- clickHandler事件的保存按钮。
- “值更改处理程序”为文本 字段以更新备份模型。不幸的是,当字段丢失FOCUS时,它只被调用 ,因此我还必须添加:
- KeyPressHandler到 文本字段以在用户开始键入时启用保存按钮。
所以我开始在文本字段中键入(我看到KeyPressHandler被调用并且Button变为启用状态),然后单击“保存”。
此刻,GWT激发“焦点丢失”事件,并且我的值更改处理程序被调用并且支持模型得到更新。但ClickHandler的事件会丢失!它根本不被调用。 我必须再次点击“保存”按钮,然后save()最终被调用。
问题是,当我移动鼠标点击“保存”按钮时,事件更改处理程序被执行,但“按钮点击”事件丢失。所以模型得到更新,但我必须点击“保存”两次。没有意义。我确定我没有正确使用所有这些听众(我的第一次gwt尝试)... – Alex