OVH Cloud OVH Cloud

Comment vider un champ password

20 réponses
Avatar
Denis Berger
Y a-t-il une solution javascript (ou autre !) pour empêcher le navigateur de
préremplir le champ password d'un formulaire lorsque ce formulaire a déjà
été saisi ?

Denis

10 réponses

1 2
Avatar
Laurent Vilday
Y a-t-il une solution javascript (ou autre !) pour empêcher le navigateur de
préremplir le champ password d'un formulaire lorsque ce formulaire a déjà
été saisi ?


un truc comme ça ?

<input type="password" autocomplete="off">

Mais avec ça, plus de validation du source HTML, c'est évidemment pas
valide (yet)

En javascript on peut faire :

function $(e) { return getElementById(e); }

function pasAutocomplete(elt)
{
$(elt).setAttribute('autocomplete', "off");
$(elt).autocomplete = 'off';
}

Je sais pas trop laquelle des deux façons marche sur tel navigateur et
pas sur tel autre. D'ailleurs en réalité j'utilise ça, parce que y'en a
toujours un (navigateur) pour venir pleurer :

/**
* Désactive l'autocomplete ajouté par les navigateurs
* @param {string} elt ID de l'élément INPUT
* @public
*/
function ac_desactiveBrowsers(elt)
{
try
{
$(elt).setAttribute('autocomplete', "off");
}
catch (ex)
{
try { $(elt).autocomplete = 'off'; } catch (ex) {}
}
}

--
laurent

Avatar
Olivier Miakinen

function $(e) { return getElementById(e); }

function pasAutocomplete(elt)
{
$(elt).setAttribute('autocomplete', "off");
$(elt).autocomplete = 'off';
}


Excellente idée, ce raccourci pour la fonction getElementById, dont on a
si souvent besoin ! Je crois bien que je vais l'adopter.

Avatar
bruno at modulix
Olivier Miakinen wrote:

function $(e) { return getElementById(e); }

function pasAutocomplete(elt)
{
$(elt).setAttribute('autocomplete', "off");
$(elt).autocomplete = 'off';
}



Excusez cette question de touriste moyen, mais ça fait deux ou trois
fois que je vois passer cette syntaxe $(...) ces derniers jours.
Quelqu'un serait-il assez aimable pour me diriger vers la doc adéquate ?

TIA
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in ''.split('@')])"


Avatar
Cenekemoi
Olivier Miakinen wrote:

function $(e) { return getElementById(e); }

function pasAutocomplete(elt)
{
$(elt).setAttribute('autocomplete', "off");
$(elt).autocomplete = 'off';
}



Excusez cette question de touriste moyen, mais ça fait deux ou trois
fois que je vois passer cette syntaxe $(...) ces derniers jours.
Quelqu'un serait-il assez aimable pour me diriger vers la doc
adéquate ?

TIA


"$" est choisi ici, mais, si vous le voulez, vous pouvez prendre "a" ou
"b" ou "f ", etc...
Ce que je veux dire c'est que "$" est une fonction comme une autre car
"$" est, pour les noms de variables/fonctions, un caractère comme les
autres.

D'ailleurs certains auteurs appellent cette fonction (qui peut être
multi-browser) "getObj"...

--
Cordialement, Thierry ;-)



Avatar
bruno at modulix
Cenekemoi wrote:

Olivier Miakinen wrote:


function $(e) { return getElementById(e); }

function pasAutocomplete(elt)
{
$(elt).setAttribute('autocomplete', "off");
$(elt).autocomplete = 'off';
}




Excusez cette question de touriste moyen, mais ça fait deux ou trois
fois que je vois passer cette syntaxe $(...) ces derniers jours.
Quelqu'un serait-il assez aimable pour me diriger vers la doc
adéquate ?

TIA



"$" est choisi ici, mais, si vous le voulez, vous pouvez prendre "a" ou
"b" ou "f ", etc...
Ce que je veux dire c'est que "$" est une fonction comme une autre car
"$" est, pour les noms de variables/fonctions, un caractère comme les
autres.


Evidemment... Bon, je vais aller boire un café, ça ira mieux après :(

D'ailleurs certains auteurs appellent cette fonction (qui peut être
multi-browser) "getObj"...


J'avais vu cette fonction dans Mochikit, avec effectivement (pour ce
qu'il m'a semblé en comprendre suite à un rapide survol) une sémantique
similaire.

Ok, merci.
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in ''.split('@')])"




Avatar
Thierry
bruno at modulix wrote in news:44588a14$0$12445
$:

J'avais vu cette fonction dans Mochikit, avec effectivement (pour ce
qu'il m'a semblé en comprendre suite à un rapide survol) une sémantique
similaire.


Prototype l'utilise aussi, mais pourquoi testent-ils le type string ?

function $() {
var elements = new Array();

for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);

if (arguments.length == 1)
return element;

elements.push(element);
}

return elements;
}

--
Cherche boulot informaticien sur Toulouse, Nantes et Bordeaux de
préférence.
CV par retour de courrier. (gros systèmes s'abstenir)

Avatar
Thierry
Thierry wrote in
news::

bruno at modulix wrote in news:44588a14$0$12445
$:

J'avais vu cette fonction dans Mochikit, avec effectivement (pour ce
qu'il m'a semblé en comprendre suite à un rapide survol) une sémantique
similaire.


Prototype l'utilise aussi, mais pourquoi testent-ils le type string ?


Question supplémentaire : comment tester si une fonction est deja déclarée
et la déclarer si besoin ?

(certaines de mes pages utilisent proto, d'autres non, mais toutes inclues
un fichier de fonctions JS).

--
Cherche boulot informaticien sur Toulouse, Nantes et Bordeaux de
préférence.
CV par retour de courrier. (gros systèmes s'abstenir)


Avatar
Cenekemoi
Question supplémentaire : comment tester si une fonction est deja
déclarée et la déclarer si besoin ?


Par exemple en testant "window.nomFonc" ou bien "window['nomFonc']", ça
marche !...
Il faut bien sûr qu'il n'existe pas de variable globale portant le même
nom que la dite fonction.

--
Cordialement, Thierry ;-)

Avatar
mv1
"Denis Berger" a écrit dans le message de news:
4457aaa4$0$16730$
Y a-t-il une solution javascript (ou autre !) pour empêcher le navigateur
de préremplir le champ password d'un formulaire lorsque ce formulaire a
déjà été saisi ?

Denis



'lut,

Perso, je fait : <input type="password" onFocus="this.value='';"
onClick="this.value='';">

- mv1 -

Avatar
Olivier Miakinen

Y a-t-il une solution javascript (ou autre !) pour empêcher le navigateur
de préremplir le champ password d'un formulaire lorsque ce formulaire a
déjà été saisi ?


Perso, je fait : <input type="password" onFocus="this.value='';"


Efficace, mais un peu violent. Si on quitte le focus en cours de saisie
du mot de passe, il faut tout recommencer depuis le début.

onClick="this.value='';">


Le onClick n'est pris en compte qu'après le Submit ?


1 2