web-dev-qa-db-fra.com

Désactiver la saisie semi-automatique pour Chrome 66

Avec chrome 66, je ne pouvais pas trouver un moyen de désactiver la saisie semi-automatique sur les entrées de texte comme auparavant. J'ai essayé autocomplete="off" et autocomplete="new-password" qui fonctionnaient jusqu'à Chrome 63, mais je ne le fais plus.

Existe-t-il un nouveau moyen de désactiver cette fonctionnalité? 

Merci !

8
jojo____

Je viens de rencontrer ceci - Google examine les champs id ou name pour déterminer s’il a sauvegardé des données pour ce champ. En tant qu'auteur de site, utilisez un nom/identifiant généré aléatoirement et/ou ajoutez un autocomplete=<random string> au champ.

Voir ce terrain de jeu: https://jsfiddle.net/mfdc22pz/1/

BTW Chrome Canary (68) corrige ce bug!

3
Moos

J'ai résolu en utilisant un peu de jQuery (mais vous pouvez utiliser un simple javascript).

Le problème est que chrome regarde le nom et/ou le id de vos champs . La seule solution que j'ai trouvée est de supprimer ces attributs, d'ajouter un attribut nom de donnée avec le vrai nom du champ, et attachez à nouveau l'attribut name après l'envoi en utilisant javascript.

Il y a un exemple

<form onsubmit="return formSubmit(this);" autocomplete="off">
    <input type="text" data-name="dateStart" class="form-control" />
</form>


<script>
function formSubmit(form) {
  console.log(form);
  $(form).find('.form-control').each(function(){
    $(this).attr('name', $(this).data('name'));
  });
  console.log(form);
  query = jQuery(form).serialize();
  window.open("/YOUR_URL/?" + query, "_self");
  return false;
};
</script>
2
Dario Latini

J'ai eu le même problème . Contourner avec l'insertion invisible insère le faire comme première entrée sur la page.

[Html] ...... [Css] .... invisible_input {height: 0.1px; position: absolute; margin- en haut: -500px;} ...

Mais j'attends la réponse du développeur Chrome: / J'espère que cela vous aidera!  enter image description here

1
K.Dinh

Ce qui fonctionne pour moi, c’est utiliser une saisie sans mot de passe qui prétend avoir un masque de mot de passe - lutter contre les fournisseurs de navigateur pour désactiver la complétion automatique sur les champs de mot de passe réels aboutira probablement à une frustration. 

Voici un bac à sable: https://codesandbox.io/s/yp3pyl4rkv

Une approche similaire avec plus de fonctionnalités est à https://github.com/karaggeorge/react-better-password

0
eug