GWT(event.getCharCode)在IE和Firefox中表现不同

Vic*_*cky 4 gwt gwt2 gwt-2.2

我正在浏览GWT网站上有关StockWatcher应用程序的教程,并按照步骤4:在客户端管理事件中所述测试应用程序.

下面的代码在Firefox和IE7中表现不同.在IE7中这很好用,即如果我在文本字段中输入一些垃圾字符并按Enter键" event.getCharCode() == KeyCodes.KEY_ENTER"行成功执行,我可以看到一条警告消息.但是,如果我使用Firefox,这条线路也不起作用.

当我使用Firefox并按Enter键时,event.getCharCode返回一些垃圾字符.我在这做错了什么?或者这是预期的行为?

newSymbolTextBox.addKeyPressHandler(new KeyPressHandler() {
          public void onKeyPress(KeyPressEvent event) {
            if (event.getCharCode() == KeyCodes.KEY_ENTER) {
              addStock();
            }
          }
        });
Run Code Online (Sandbox Code Playgroud)

Jas*_*erk 9

使用a KeyUpHandler代替a KeyPressHandler来捕获非字符键(如enter,escape等).致电KeyUpEvent#getNativeKeyCode()获取密钥代码.