0

私の onKeyPress ENTER キー イベントは、(IE で) ローカルホストにデプロイすると機能しますが、テスト サーバーにデプロイすると (IE で) 機能しません。テストサーバーでは、ENTERイベントはFireFoxとChromeでも機能しますが、テストサーバーのIEでは機能しません(ただし、ローカルホストのIEでは機能します)

        <script type="dojo/connect" event="onKeyPress" args="evt">
            // append a ENTER key press event handler to combobox to allow quick submit
             var key = evt.charOrCode;
             if (key == dojo.keys.ENTER) {
                if (!submitSearch(false)) {
                    dojo.stopEvent(evt);
                }
             }
        </script>

これがなぜなのか、誰かが洞察を提供できますか?

4

1 に答える 1

1

間違ったイベントを使用していると思います。"onKeyDown"イベントを使ってみてください。

keypressイベントは、押されたキーが A ~ Z などの文字 (テキスト ボックスなど) にもなる場合にのみ使用する必要があります。

Enterキー(この例では)がそれをトリガーするべきではないと思うので、keydownイベントを使用してみる価値があるかもしれません. そのイベントは、押されたキーの種類とは無関係に発生するためです。

いくつかの理由で、IE は最初のマシンの「Enter」キーを目に見える文字と見なしましたが、2 番目のマシンではそうではありませんでした (異なるバージョンに関係している可能性があります)

イベント (およびブラウザー サポート) の詳細については、こちらを参照してください。

于 2013-04-12T06:23:35.197 に答える