Comment activer l'event handler d'un champ texte (formulaire)? [Résolu]

Signaler
Messages postés
3
Date d'inscription
dimanche 26 novembre 2000
Statut
Membre
Dernière intervention
4 janvier 2010
-
Simbabbad
Messages postés
3
Date d'inscription
dimanche 26 novembre 2000
Statut
Membre
Dernière intervention
4 janvier 2010
-
Bonjour,

j'essaie de mettre en place bénévolement pour un forum auquel je participe un moyen pratique de changer la couleur de police et la couleur de fond des boîtes utilisateur.

Page test.

Pour cela j'ai récupéré un code de choix de couleur qui se greffe automatiquement sur la boîte formulaire du haut (dans "User colors"), code géré avec des events handlers.

Mon problème est que comme je voulais que l'on puisse changer deux couleurs, j'ai codé une bascule entre la police/la couleur de fond, qui change bien la valeur de la boîte en haut... mais n'active pas le event handler du code, qui ne met pas à jour l'affichage de la couleur dans la palette quand on bascule. Alors que si on entre le même montant manuellement, ça marche.

Comment "réveiller" artificiellement le event handler surveillant la boîte du haut?

Merci.

3 réponses

Messages postés
3
Date d'inscription
dimanche 26 novembre 2000
Statut
Membre
Dernière intervention
4 janvier 2010

Non, ça ne marche pas.

Mais j'ai trouvé la solution, que je donne pour ceux qui en auraient besoin:

function refreshColorField(rcolor) {
var field = document.getElementById("colorinputpick");
field.value = rcolor;
if (document.createEventObject){
// dispatch for IE
var evt = document.createEventObject();
return field.fireEvent('onchange',evt)
}
else{
// dispatch for firefox + others
var evt = document.createEvent("HTMLEvents");
evt.initEvent('change', true, true ); // event type,bubbling,cancelable
return !field.dispatchEvent(evt);
}
}

Ma boîte colorinputpick a sa valeur modifiée, puis le javascript qui suit envoie artificiellement un event pour que le handler se réveille.
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
25
Salut,

Peut-être en lui envoyant le focus?
Messages postés
3
Date d'inscription
dimanche 26 novembre 2000
Statut
Membre
Dernière intervention
4 janvier 2010

Merci en tout cas :-)