Désactiver la vérification orthographique sur les champs de texte HTML


286

Puis-je désactiver la vérification orthographique sur les champs de texte HTML (comme par exemple dans Safari)?

Réponses:


420

Mise à jour : comme suggéré par un commentateur (crédit supplémentaire à Comment puis-je désactiver le correcteur orthographique sur les entrées de texte sur l'iPhone ), utilisez-le pour gérer tous les navigateurs de bureau et mobiles.

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

Réponse originale: Javascript ne peut pas remplacer les paramètres utilisateur, donc à moins que vous n'utilisiez un autre mécanisme que les champs de texte, ce n'est pas (ou ne devrait pas être) possible.


4
pourquoi cela a-t-il été accepté? cela n'a pas de sens car il peut remplacer les paramètres des utilisateurs si le navigateur le permet. voir la réponse de ms2ger.
usr

1
Tout simplement parce que c'était la meilleure réponse à l'époque. Je suppose que Michiel n'est pas revenu en arrière et a marqué l'autre comme correct. Ce serait bien pour moi car c'est une meilleure réponse.
Eric Wendelin

2
Important à noter la compatibilité du navigateur - Mobile Safari (iOS) n'honore pas la balise par exemple - wufoo.com/html5/attributes/17-spellcheck.html
radicand

3
stackoverflow.com/questions/3416867/… a la bonne réponse à cela ( autocorrect="off") pour Mobile Safari - spellcheck=ne fonctionne pas
Chris S

1
devrait être autoComplete = "off" autoCorrect = "off" autoCapitalize = "off" spellCheck = "false"
zaman

208

Oui, utilisez spellcheck="false", comme défini par HTML5 , par exemple:

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

1
MDN a un tableau montrant la valeur par défaut de la vérification orthographique pour différents navigateurs et éléments: developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/…
Paul

2
Je reçois une erreur "Vérification orthographique de la propriété DOM inconnue. Vouliez-vous dire spellCheck?" L'usage spellChecksemble le satisfaire. Cela pourrait être simplement une réaction.
Shanimal

3
@Shanimal Oui, react utilise la case camel pour les attributs DOM. Voir reactjs.org/docs/introducing-jsx.html
sookie

13

Pour la grammaire, vous pouvez utiliser:

<textarea data-gramm="false" />

7

Un IFrame "déclenchera" le correcteur orthographique (si son contenu modifiable est défini sur true) tout comme un champ de texte, au moins dans Chrome.


1
+1 pour l'astuce "contenu modifiable sur vrai" qui est la vraie astuce
AT

4

L'extrait de code suivant le désactive pour tous textareaet les input[type=text]éléments:

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

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

    disableSpellCheck();
})();
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.