0

私は以前、ここでこの質問をしました:

ユーザーが Enter を使用してフォームを渡すのを禁止する

フォームを渡さないようにエンターキーを取得することはできましたが、問題を解決するには十分ではありませんでした。私は Windows の電話を使用しており、Datawedgeを使用してスキャンしたバーコードをフォームに渡しています。SKU をスキャンすると、自動的に渡されて入力されます。ユーザーが入力する必要のある他の領域がいくつかあるため、これは面倒です。

誰かに何かアイデアがあれば、本当に感謝します。エラーがフォーム側である場合、そのコードは次のとおりです。

<div class="search">        

  <form action="search.php" method="post">

    Search by SKU:<br />

      <input  id="entry" type="text" name="sku" />

        <br />

    Search by Description:<br />

      <input id="entry" type="text" name="desc" />

        <br />

      <input id="sub" type="submit" />

  </form>

これが起こっているところです。

お役に立てれば幸いです。

4

2 に答える 2

1

バーコード入力を受け入れるイントラネット サイトで、以前にこの問題に遭遇したことがあります。

私の本能に何か特別なことが起こっている可能性がありますが、あなたの最初の考えが正しいということですが、エンタープレスをキャプチャすることで問題が解決します.

私が気づいたことの 1 つは、Enter キーを押すのをキャプチャするのは簡単なことですが、少し面倒な場合があるということです。入力時の送信が本当に無効になっていることを確認するために、Windows Phone の外部でページをテストできましたか?

その場合、キャプチャ機能にアラートを入れて、Windows Mobile を使用しているときに正しくヒットするかどうかを確認してみましたか?

これを試してみることをお勧めします - (jquery を使用していない場合は、$() コードを body onkeypress に置き換えます)

    <script type="text/javascript">
                    function disableEnterKey(e) {
                        var key;
                        if (window.event)
                            key = window.event.keyCode; 
                        else
                            key = e.which; 

                        if (key == 13)
                            return false;
                    }

                    $(function () {
                        document.onkeypress = disableEnterKey;
                    });

   </script>

すでに完全に削除されたものを再ハッシュしている場合は、申し訳ありません。同様のプロセスを経て、最終的にJavaScriptソリューションに戻ったことを知っています。

于 2011-07-19T21:59:00.643 に答える
1

WinMo を実行するテスト デバイスを手元に持っていないため、ここでは推測にすぎませんが、明示的に言及していないため、DataWedge の AutoEnter 機能を無効にしましたか?

[HKEY_CURRENT_USER\Software\Symbol\DataWedge\Barcode]

自動入力

ワード

ENTER キー (VK_RETURN 仮想キー コード) をバーコードの後 (および選択した接尾辞の後) に送信するかどうかを設定します。 0 = ENTER キーを送信しない 1 = ENTER キーを送信する

于 2011-07-19T11:54:51.097 に答える