Champ input et historique de recherche

Résolu
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   -  
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
J'ai créé un formulaire sur lequel j'ai ajouté un script Ajax que j'ai trouvé qui me permet au fur et a mesure que je tape de faire une recherche dans ma BDD et d'en proposer une liste en dessus (de la même manière que sur le navigateur quand on tape dans la barre d'adresse).
Toutefois, le navigateur à lui enregistré les dernières info qui ont été tapé dans ce même champ et me les proposes également. Du coup, j'ai un double affichage en même temps. Celui du navigateur viens passer par dessus celui du script Ajax.

Y'a a t-il un moyen via un script quelconque de le masquer?
J'espère avoir été clair dans mon explication.
Merci d'avance pour votre aide.


8 réponses

ifisch Messages postés 188 Date d'inscription   Statut Membre Dernière intervention   17
 
Je pense qu'il faudrait modifier ton script AJAX si tu pouvais nous montrer a quoi il ressemble :)
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
C'est pas un problème d'ajax. Le script fonctionne très bien.
Voici une capture qui permettra peut-être de mieux comprendre le problème:
http://arthezius.free.fr/up_img/photos/lgw4x7t6ww1x.jpg
L'encadré rouge est celui généré par le script ajax. L'encadré gris qui viens devant est celui correspondant aux précédente recherche et affiché par le navigateur. C'est celui là que je veux masquer.
0
ifisch Messages postés 188 Date d'inscription   Statut Membre Dernière intervention   17
 
Essaie d'ajouter ce code Js sur tes input : setAttribute("autocomplete","off")
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Tu l'ajoute comment? Pardonne ma question, mais je connais pas grand chose au JS. Je ne fait que prendre des codes qu'on me donne.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Salut.
Tu ferais mieux d'apprendre le JS :)
Dans la balise script :
window.onload = function() {
    document.getElementsById('id_de_ton_input').setAttribute("autocomplete","off");
};
Si tu as déjà le "window.onload", inutile de le remettre.
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Oui je sais bien que je ferai mieux d'apprendre le JS. De même j'aimerai apprendre l'Ajax, Poo, XML, etc...
ça viendra en temps voulu. Pour le moment, je me dépatouille comme ça.

Sinon, ça ne marche pas ce que vous m'avez dit.
J'ai essayé précisément ce que vous m'avez dit en mettant l'id de ma balise input et ça marche pas. Du moins pas sur Firefox. J'ai pas testé j'ai les autres navigateur.
Voici ma page de test: http://tests.arthezius.fr/input.php
Quand on tape un texte, qu'on valide et qu'on retape le même texte, celui-ci nous est suggérer par le navigateur. Je veux supprimer ça.
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
J'ai fait quelques recherche en parallèle à partir de votre code et de l'autocomplete en JS. En fait ça m'a permi d'aiguiller mes recherches.
Voilà ce que j'ai trouvé et qui fonctionne parfaitement sous Firefox:
<script type="text/javascript"> 

window.onload = function() { 
 for(var i = 0, l = document.getElementsByTagName('input').length; i < l; i++) { 
  if(document.getElementsByTagName('input').item(i).type == 'text') { 
   document.getElementsByTagName('input').item(i).setAttribute('autocomplete', 'off'); 
  }; 
 }; 
}; 
</script>

Nouvelle page de test: http://tests.arthezius.fr/input2.php

J'ai trouvé ce script ici: https://www.paperblog.fr/889821/desactiver-la-saisie-semi-automatique-dans-un-input-text-autocomplete/
0
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Ce n'est pas getElementsById mais getElementById.
Honte à moi, une page ne peut pas avoir plusieurs éléments avec le même ID, il ne faut donc pas de "s" à "Element".
0