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 :

[AJAX] innerHTML assez déroutant


Sujet :

JavaScript

  1. #1
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut [AJAX] innerHTML assez déroutant
    Bonjour à tous !!!!

    Je me sert d'AJAX pour mettre à jour des div, tout marche parfaitement, mais sauf pour une série de div.

    Je m'explique, je réalise une fiche horaire, lorsque je rentre une heure, le total de la journée se met à jour automatiquement, cela marche mais pour une certaine parti des employés (enqueteurs) que je rajoute automatiquement, cette div ne se met pas à jour et bloque le rafraichissement des autres.

    Aprés des essais j'ai vu que c'est avec le inner.html que le probléme surviens
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById(id).innerHTML = "Page en cours de chagement";
    Quand je l'enléve ca passe mais aprés comme c'est de l'AJAX, il y'a le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
              	document.getElementById(id).innerHTML = xmlhttp.responseText;
    que je ne peut pas enlever.

    Le pire c'est que sous IE, aucune erreur n'apparait (petit triangle jaune) et sous Firefox, la console d'erreur reste désespérement vide...

    Je ne sais que faire car c'est vital que cela puisse marcher.

    MERCI d'avance

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    pour les erreurs, ça dépend comment la notification est paramétrée dans tes nav.
    Si marche sous IE, c'est une piste :
    vérifie que ce div a bien un id, est pas seulement un name ...
    IE pardonne ce genre d'erreur, pas les autres ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  3. #3
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut
    Le truc c'est que ca ne marche ni sur IE ni sur Firefox (pas essayé sur les autres), et que pour les mêmes div mais avec des personnes différentes ca marche sans probléme.

    J'ai verifie, j'ai mis des ID a toutes mes div et des names aussi il me semble, lors de la comparaison des div, la div a mettre a jour est bien la bonne et je n'ais pas une seule erreur à l'affichage. Je cherche toutes les solutions possible mais je ne trouve pas

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Comme y a pas beaucoup de code à se mettre sous la dent pour debugger :
    ton div a bien des attributs display='block' et/ou visibility = 'visible' ?

    Bref il est pas masqué ?
    Si tu mets une bordure, tu le vois ??

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  5. #5
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut
    Re

    Ma div est bien visible, d'ailleurs, elle l'est toujoursn il n'y'a que le contenu qui change.

    Lorsque j'écris dans mon div il ne s'écrit rien, en gros voila la création de la div et son appel.

    Création :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Response.write("<td><div id='"&Session("IdDuConnecte")&"-"&MonMois&"-"&AnneeDem&"-"&kelJour&"-TotalDay'><input class='InputText' type='text' size='10' id='"&Session("IdDuConnecte")&"-"&MonMois&"-"&AnneeDem&"-"&kelJour&"-TotalDay' disabled value='" )
    Ce qui donne (avec l'affichage de la source web)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    56-Janvier-12-2007-Totalday

    Mais en fait en redigeant ce message je me suis rendu compte que l'input se trouvant dans le div a rafraichir ne comporté pas l'ID de la div donc en essayant de le remplir aprés traitement JS il essayé de remplir un autre div (inexistant ou non mais en tout cas je n'avais pas d'erreur).

    En plus comme c'est une usine à gaz cette fiche horaire si les browser ne mettent plus de message d'erreur, c'est du sport...

    Donc voila une semaine de galére pour une erreur d'ID.

    En tout cas merci car si je n'avais pas mis du code pour argumenter je n'aurais pas vu cette erreur.

    MERCI

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    OK, tant mieux.
    Mais si tu laisses comme ça, le div et l'input ont le même ID.
    Et ça

    A moins que tu ais recorrigé après coup ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  7. #7
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut
    Pour le coup du même Id, cela ne me dérange pas plus que ca, je n'ais pas eu d'erreurs avec ceci, a moins que ca peut engendrer des bugs ( en fait plein j'imagine) mais comme l'AJAX ne prend que l'ID d'une div ca passe non ?

    Quelles erreurs cela peut-il engendrer ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AJAX] Ajax, innerHTML et fonction javascript - solution ?
    Par gouroulubrik dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 25/03/2008, 21h35
  2. [AJAX] Ajax, innerHTML et variable javascript
    Par philippejuju dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 11/01/2007, 11h30
  3. [AJAX] innerHTML : code altéré
    Par avogadro dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 23/08/2006, 15h35
  4. [AJAX] innerHTML et IE
    Par gmonta31 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/05/2006, 11h12
  5. AJAX + Innerhtml + img => Bug sous IE
    Par GregPeck dans le forum Langage
    Réponses: 12
    Dernier message: 07/02/2006, 17h43

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