web-dev-qa-db-ja.com

Edgeで入力テキストの候補を無効にしますか?

テキストボックスドロップダウンAngularJSコンポーネントを作成しました。これは、Chrome、Firefox、Safari、およびInternet Explorerで適切に機能します。

このコンポーネントの機能は、文字列を入力し、上下の矢印キーを使用して候補をスクロールできることです。

Microsoft Edgeでは、下矢印を押すとすぐに、次のテキストが入力ボックスに追加されます。

変更を簡単に説明してください(スペルの修正、文法の修正、書式の改善)

これを防ぐためにクライアント側でできることはありますか?

<form>
    <input type="text" />    
</form>

これを示すために、上記のスニッパーを実行し、テキストボックスに何かを入力して、Edgeの下矢印を2回押します。これが私のオートコンプリートを壊しているので、これが起こらないようにしたいです!

ありがとう

15
JMK

私が正しく理解している場合、オートコンプリート機能に問題があります。入力に「autocomplete = 'off'」を追加するだけで、機能が無効になります。

<input type="text" autocomplete="off"/>
27
rockmandew

残念ながら、最新のEdgeでは、上記の提案はどれもうまくいきませんでした。ただし、このソリューションは次のことを行います。

<input type="text" autocomplete="off" list="autocompleteOff" 
    id="fieldId" name="fieldname" placeholder="Placeholder here" />

これにより、Edgeは、存在しないautocompleteOffと呼ばれるデータルックアップリストを見つけます。私のために御馳走を働かせます。

追加された利点は、それが純粋なHTMLであり、CSSやJSが必要ないことです。

11
SimonGoldstone

Mozillaから:実際のフォームタグにオートコンプリートを設定できます<form autocomplete='off' ... >...</form>は、フォーム全体または個別に機能します<input type='text' />タグ。

IE 11とEdgeでフォームに配置すると機能しますが、個々のタグは機能しません。Chromeでテストしましたが、フィールドはすでにオートコンプリート。

詳細については、完全な 記事 を参照してください。

[〜#〜]ノート[〜#〜]

ほとんどのブラウザは、ログインフィールドではこれを無視します。

6

chromeの入力でオートコンプリートを削除するには、autocomplete="off"を使用するときにIDも削除する必要があります。入力のidを削除しないと、オートコンプリートは機能しません。

簡単な例:

<input type="text" autocomplete="off" list="autocompleteOff" 
     name="fieldname" placeholder="Placeholder here" />

入力は名前で処理できます;)、それでうまくいきます。

3
Aras

アプリ/サイト全体で必要な場合は、jqueryを使用できます。

$('input').attr('autocomplete','off');

または、私と同じようにAngular + ui-routerを使用している場合は、次のことを試してください。

あなたのindex.html次のスクリプトを追加します。

<script type="text/javascript">
    setTimeout(function() {
        $('input').attr('autocomplete', 'off');
    }, 2000);
</script>

次に、状態の変化に対応するために、以下をルートコントローラに追加します。

$rootScope.$on('$stateChangeStart', function() {
                $timeout(function () {
                    $('input').attr('autocomplete', 'off');
                }, 2000);
            });

タイムアウトは、jqueryを適用する前にHTMLがレンダリングするためのものです。

より良い解決策を見つけた場合はお知らせください。

1
TrampGuy