3

私はjavascriptでいくつかのデモを行っています。テキスト入力でonkeypressイベントを登録し、フォームを自動送信するための「Enter」キーかどうかを確認します。ブラウザにはオートコンプリート機能があり(私のものはFirefoxです)、上/下矢印とEnterキーを使用してドロップダウンリストから選択できます。問題は、入力テキストにフォーカスがあり、オートコンプリートが表示されているときに、Enterボタンを押してオートコンプリート項目を選択するだけで、同時にフォームが自動送信されることです。これを回避する方法は?javascriptを使用してブラウザからオートコンプリート要素を取得するにはどうすればよいですか?

4

2 に答える 2

1

許可されていません。Webブラウザで実行することになっている場合は、セキュリティホールと見なされる可能性があります。

あなたのウェブサイトの訪問者が「p*rn」のようなキーワードを検索しようとしたと仮定して、あなたはウェブサイトの所有者としてp * rn!のようなそのユーザーを知ることができます。これは、リクエストのセキュリティとプライバシーの問題を示すためのほんの一例です。

于 2012-12-16T14:26:37.910 に答える
1

ブラウザがプログラムにオートコンプリート情報を提供することはありません。これは、データを盗む方法であり、したがってセキュリティ上の脅威になります。私のプログラムがあなたのアドレスを盗もうとしていると想像してみてください。あなたが私のページにアクセスするとき、私はアドレステキストボックスを保持し、過去に入力したすべてのアドレス値を取得します。

コメントで示唆されているように、ドロップダウンが表示されないようにオートコンプリートをオフに設定できます。

これは、このテーマの説明を含むフォームのオートコンプリートをオフにする方法のリンクです。

于 2012-12-16T14:26:47.143 に答える