IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

IE bug sur mise à jour attribut onclick en js


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut IE bug sur mise à jour attribut onclick en js
    Bonjour,

    Je viens de passer ma nuit (il est 5h30 du mat) sur un pb très irritant et donc je sollicite votre aide !

    J'ai un petit programme en ajax avec des éléments dont je dois mettre à jour les attributs en js à l'arrivée.

    La fonction js à entrer contient un paramètre qui vient du doc xml.
    Voici le bout de code en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    while(ma_condition){
     
    	if(checked.data == 0){
    		if(document.all){
    			elem.onclick = function(){
    				ma_fonction(id.data, 'action1');
    			}
    		} else {
    			elem.setAttribute("onClick", "ma_fonction(" + id.data + ", 'action1');");
    		}
    	} else {
    		if(document.all){
    			elem.onclick = function(){
    				ma_fonction(id.data, 'action2');
    			}
    		} else {
    			elem.setAttribute("onClick", "ma_fonction(" + id.data + ", 'action2');");
    		}
    	}
    }
    Où id.data est ma variable (que j'ai testée bien sûr et il n'y a pas de pb).

    Sous FF évidement tout va bien. Le problème avec IE, c'est qu'au final tous les éléments de ma boucle vont avoir le même attribut onclick, et ce sera le dernier de la boucle. Pourquoi ?
    J'ai pensé que quand les fonctions n'ont pas de nom IE leur en attribut un genre anonymous et que si à chaque itération le nom est le même fatalement au bout tout le monde se récupère la même fonction, mais je ne suis pas sûr. Et en plus je ne vois pas comment donner des noms différents aux fonctions...

    Bref je patauge sévère.

    Des idées ?

    Merci !

    Andong

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Que je sache en js les variables de variables ça n'existe pas si ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Mais pourquoi tout le monde boude mes posts comme ça ?

    Bon finalement j'ai contourné le problème avec une fonction ma_fonction_loader.
    Elle reste bien sage à attendre que je remplisse un formulaire avec mon doc xml et là elle appelle ma_fonction. C'est moche et ça a eu des répercussions aux 4 coins de mon code mais ça marche.

    Il n'empêche que ce bud d'IE est bien lourd, à moins que j'ai loupé qqchose ?
    Je ne marque pas le sujet comme résolu, vu qu'il n'est pas résolu...

Discussions similaires

  1. [MySQL] fonction mise à jour avec onclick
    Par akara dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 12/06/2007, 10h44
  2. Message erreur sur Mise à jour formulaire
    Par Daniel MOREAU dans le forum Access
    Réponses: 6
    Dernier message: 06/10/2006, 08h52
  3. Erreur sur mise à jour
    Par Smint dans le forum Access
    Réponses: 10
    Dernier message: 01/07/2006, 15h29
  4. Question sur mise à jour automatique
    Par Al soltani dans le forum Access
    Réponses: 2
    Dernier message: 03/03/2006, 11h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo