#14981 - html5 - How to turn off autocomplete while keep using datalist element in html - Stack Overflow
Fait chier d’avoir à arriver à ce genre de hack parce que les navigateurs sont mal foutus.
Firefox par exemple, quand on utilise un champ avec les datalist, on a une liste de suggestion. C’est le but. Sauf que l’historique de saisi est également dans un liste, et cette liste vient se superposer à celle du datalist, rendant l’ensemble impraticable >_<.
Et si je désactive l’autocompletion (avec l’attribut HTML), pour une drôle de raison ça marche sur Firefox desktop (datalists actif, historique inactif) mais pas sur mobile (les deux sont inactifs).
Du coup faut jongler avec du JS.
Je pense que la solution la plus simple (pas de HTML à ajouter, seulement du JS) est ça : au chargement de la page, changer le name/id du champ pour un truc aléatoire afin que le nav ne le reconnaisse pas et ne suggère des choses, puis remettre le name/id "normal" lors de la soumission du formulaire.
Deux lignes de JS suffisent alors.
Fuuu.
ÉDIT : ah tiens, on dirait que Firefox a depuis corrigé le problème (et Chrome aussi) : les deux listes de suggestions sont mergées. C’est beaucoup mieux, mais ça n’empêche pas les doublons non plus…
Re-ÉDIT : en fait non, ça bug toujours, à cause de l’indexation des suggestions qui est décalée avec l’historique.
Firefox par exemple, quand on utilise un champ avec les datalist, on a une liste de suggestion. C’est le but. Sauf que l’historique de saisi est également dans un liste, et cette liste vient se superposer à celle du datalist, rendant l’ensemble impraticable >_<.
Et si je désactive l’autocompletion (avec l’attribut HTML), pour une drôle de raison ça marche sur Firefox desktop (datalists actif, historique inactif) mais pas sur mobile (les deux sont inactifs).
Du coup faut jongler avec du JS.
Je pense que la solution la plus simple (pas de HTML à ajouter, seulement du JS) est ça : au chargement de la page, changer le name/id du champ pour un truc aléatoire afin que le nav ne le reconnaisse pas et ne suggère des choses, puis remettre le name/id "normal" lors de la soumission du formulaire.
Deux lignes de JS suffisent alors.
Fuuu.
ÉDIT : ah tiens, on dirait que Firefox a depuis corrigé le problème (et Chrome aussi) : les deux listes de suggestions sont mergées. C’est beaucoup mieux, mais ça n’empêche pas les doublons non plus…
Re-ÉDIT : en fait non, ça bug toujours, à cause de l’indexation des suggestions qui est décalée avec l’historique.