Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Remplissage automatique de champs texte

3 réponses
Avatar
Stephane Zuckerman
Bonjour, j'ai la petite fonction suivante (j'ai tenté de la déclarer dans
le header, en fin de fichier HTML, le résultat est le même) :

function writeAll(chkbox) {
var elts = document.getElementById('form').elements;
var txt = document.getElementById('toto'); // champ texte
var val = chkbox.checked ? txt.value : "";
for (var i = 0; i < elts.length; ++i) elts[i].value = val;
}

En gros, si l'utilisateur renseigne le champ texte "toto" et qu'il coche
la checkbox qui va bien, celle-ci réagit sur l'événement onchange et
appelle writeAll(). Tous les champs du formulaire 'form' sont des champs
texte.

Sous Firefox, tout va bien, et tout réagit comme il faut.
Sous IE 6, il faut cliquer "dans le vide" pour que la fonction ait l'effet
voulu. Quelqu'un pourrait-il me dire comment "casser" ce comportement ?

Merci d'avance.
--
"Je deteste les ordinateurs : ils font toujours ce que je dis, jamais ce
que je veux !"
"The obvious mathematical breakthrough would be development of an easy
way to factor large prime numbers." (Bill Gates, The Road Ahead)

3 réponses

Avatar
YD
Bonjour, j'ai la petite fonction suivante [...]
En gros, si l'utilisateur renseigne le champ texte "toto" et qu'il coche
la checkbox qui va bien, celle-ci réagit sur l'événement onchange et
appelle writeAll(). Tous les champs du formulaire 'form' sont des champs
texte.

Sous Firefox, tout va bien, et tout réagit comme il faut.
Sous IE 6, il faut cliquer "dans le vide" pour que la fonction ait l'effet
voulu. Quelqu'un pourrait-il me dire comment "casser" ce comportement ?


Ce comportement est "normal" sous IE, l'évènement onchange ne se déclenche
qu'à la perte du focus sur l'élément déclencheur. Le plus simple consiste
à remplacer onchange par onclick (qui gère aussi le clavier !).


--
Y.D.

Avatar
Stephane Zuckerman
Bonjour, j'ai la petite fonction suivante [...]
En gros, si l'utilisateur renseigne le champ texte "toto" et qu'il coche
la checkbox qui va bien, celle-ci réagit sur l'événement onchange et
appelle writeAll(). Tous les champs du formulaire 'form' sont des champs
texte.

Sous Firefox, tout va bien, et tout réagit comme il faut.
Sous IE 6, il faut cliquer "dans le vide" pour que la fonction ait l'effet
voulu. Quelqu'un pourrait-il me dire comment "casser" ce comportement ?


Ce comportement est "normal" sous IE, l'évènement onchange ne se déclenche
qu'à la perte du focus sur l'élément déclencheur. Le plus simple consiste
à remplacer onchange par onclick (qui gère aussi le clavier !).


Merci :-)
Mais quid du comportement de Firefox dans ce cas ?

--
"Je deteste les ordinateurs : ils font toujours ce que je dis, jamais ce
que je veux !"
"The obvious mathematical breakthrough would be development of an easy
way to factor large prime numbers." (Bill Gates, The Road Ahead)


Avatar
Stephane Zuckerman
Ce comportement est "normal" sous IE, l'évènement onchange ne se déclenche
qu'à la perte du focus sur l'élément déclencheur. Le plus simple consiste
à remplacer onchange par onclick (qui gère aussi le clavier !).


Merci :-)
Mais quid du comportement de Firefox dans ce cas ?
Je n'ai rien dit, tout fonctionne bien !


Merci encore.
--
"Je deteste les ordinateurs : ils font toujours ce que je dis, jamais ce
que je veux !"
"The obvious mathematical breakthrough would be development of an easy
way to factor large prime numbers." (Bill Gates, The Road Ahead)