Wyłącz sprawdzanie pisowni w polach tekstowych HTML


287

Czy mogę jakoś wyłączyć sprawdzanie pisowni w polach tekstowych HTML (jak widać np. W Safari)?

Odpowiedzi:


420

Aktualizacja : zgodnie z sugestią komentatora (dodatkowe uznanie dla Jak mogę wyłączyć moduł sprawdzania pisowni podczas wprowadzania tekstu na iPhonie ), użyj go do obsługi wszystkich przeglądarek stacjonarnych i mobilnych.

<tag autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>

Oryginalna odpowiedź: Javascript nie może zastąpić ustawień użytkownika, więc jeśli nie użyjesz innego mechanizmu niż pola tekstowe, nie jest to (lub nie powinno być) możliwe.


4
dlaczego to zostało zaakceptowane? nie ma to sensu, ponieważ może nadpisać ustawienia użytkowników, jeśli przeglądarka na to pozwala. patrz odpowiedź ms2ger.
usr

1
Tylko dlatego, że była to najlepsza odpowiedź w tym czasie. Zgaduję, że Michiel nie wrócił i nie oznaczył drugiego jako poprawny. Byłoby ze mną w porządku, ponieważ jest to lepsza odpowiedź.
Eric Wendelin,

2
Ważne, aby pamiętać o zgodności przeglądarki - Mobile Safari (iOS) na przykład nie honoruje tego tagu - wufoo.com/html5/attributes/17-spellcheck.html
radicand

3
stackoverflow.com/questions/3416867/... ma poprawną odpowiedź na to ( autocorrect="off") w przypadku Mobile Safari - spellcheck=nie działa
Chris S

1
powinno być autoComplete = "off" autoCorrect = "off" autoCapitalize = "off" spellCheck = "false"
zaman

208

Tak, użyj spellcheck="false", zgodnie z definicją HTML5 , na przykład:

<textarea spellcheck="false">
    ...
</textarea>

1
MDN ma tabelę pokazującą domyślną wartość sprawdzania pisowni dla różnych przeglądarek i elementów: developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/…
Paul

2
Pojawia się błąd „Sprawdzanie pisowni nieznanej właściwości DOM. Miałeś na myśli sprawdzanie pisowni?” Używanie spellCheckwydaje się to spełniać. To może być tylko reakcja.
Shanimal,

3
@Shanimal Tak, reaguj używa wielbłąda dla atrybutów DOM. Zobacz reagjs.org/docs/introducing-jsx.html
sookie


7

IFrame „wyzwoli” moduł sprawdzania pisowni (jeśli ma ustawioną wartość true dla edytowalnej zawartości) tak samo jak pole tekstowe, przynajmniej w Chrome.


1
+1 za sztuczkę „edytowalną treść ustawioną na true”, która jest prawdziwą sztuczką
AT

4

Poniższy fragment kodu wyłącza go dla wszystkich textareai input[type=text]elementów:

(function () {
    function disableSpellCheck() {
        let selector = 'input[type=text], textarea';
        let textFields = document.querySelectorAll(selector);

        textFields.forEach(
            function (field, _currentIndex, _listObj) {
                field.spellcheck = false;
            }
        );
    }

    disableSpellCheck();
})();
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.