On vient de me demander d'empêcher les navigateurs d'enregistrer les données saisies dans des champs de formulaire spécifiques. Cela fait des années que je n'ai pas fait de développement web, et c'est une capacité relativement nouvelle. J'ai pu trouver la propriété autocomplete="off" dans un champ de formulaire, mais je n'arrive pas à trouver de documentation indiquant quels navigateurs la prennent en charge. Quelqu'un peut-il m'indiquer la direction à suivre pour trouver un tableau des attributs de formulaire et de la compatibilité avec les navigateurs ?
Réponses
Trop de publicités?Certaines solutions ne fonctionnent pas dans les navigateurs modernes.
Un autre lien de solution est donné ici. qui fonctionne dans tous les navigateurs modernes.
Input type=password, ne pas laisser le navigateur se souvenir du mot de passe.
Vous pouvez utiliser autocomplete="off" dans cette solution donnée
td;dr : Pour vérifier la compatibilité entre les navigateurs, voici une doc officielle MDN sur la désactivation de l'autocomplétion avec le lien pour la compatibilité -. https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion
Une réponse un peu plus longue : Votre problème est dû à la fonction de remplissage automatique de Chrome, et voici la position de Chrome à ce sujet dans ce lien de bogue -. https://bugs.chromium.org/p/chromium/issues/detail?id=468153#c164
Pour faire simple, il y a deux cas de figure -
-
[CAS 1] : Votre
input
est autre quepassword
. Dans ce cas, la solution est simple, et comporte trois étapes.- Ajouter
name
de l'attributinput
-
name
ne doit pas commencer par une valeur comme l'adresse électronique ou le nom d'utilisateur, sinon Chrome affiche toujours la liste déroulante. Par exemple,name="emailToDelete"
affiche la liste déroulante, maisname="to-delete-email"
ne le fait pas. Il en va de même pourautocomplete
attribut. - Ajouter
autocomplete
et ajoutez une valeur significative pour vous, par exemplenew-field-name
Il ressemblera à ceci, et vous ne verrez plus jamais le remplissage automatique (et la valeur que vous entrez ne sera pas mise en cache) pour cette entrée pour le reste de votre vie.
<input type="text/number/something-other-than-password" name="x-field-1" autocomplete="new-field-1" />
- Ajouter
-
[CAS 2] :
input
type
espassword
- Dans ce cas, quels que soient vos essais, Chrome vous montrera la liste déroulante pour gérer les mots de passe / utiliser un mot de passe existant et affichera l'invite pour mettre à jour le mot de passe mis en cache. Firefox fera également quelque chose de similaire, et il en sera de même avec tous les autres principaux navigateurs. Consultez le lien vers la documentation MDN que j'ai indiqué tout en haut.
- Dans ce cas, si vous voulez vraiment empêcher l'utilisateur de voir la liste déroulante pour gérer les mots de passe ou l'invite pour enregistrer les informations d'identification, vous devrez jouer avec JS pour changer le type d'entrée, comme mentionné dans les autres questions connexes.
- Réponses précédentes
- Plus de réponses
0 votes
En rapport : stackoverflow.com/questions/582244/
0 votes
En rapport : IE 11 ignore-t-il autocomplete="off" ?
2 votes
@camigreenall - il ne s'agit pas d'un doublon ; la question à laquelle vous avez fait référence fournit une réponse sur la façon de procéder ; ce que j'ai demandé, c'est de la documentation sur la compatibilité des navigateurs.