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

AJAX Discussion :

[AJAX] nouveau script dans une div conteneur


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 6
    Par défaut [AJAX] nouveau script dans une div conteneur
    Bonjour à tous,

    Petite précision en amont, aucune connaissance de JAVA n'est requise pour répondre à ce problème, c'est un souci uniquement lié à AJAX.


    Voilà l'exposé du problème.
    J'aimerai qu'en réaction à certaines utilisations client (liveclick()) un nouvel applet JAVA se lance dynamiquement dans ma page, plus précisément qu'il substitue le script de l'applet pré-existant avec un script initialisant une nouvelle applet dans un même div conteneur défini.

    Pour info l'applet java concerne JMOL et le script de loading est pré-fait et très simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="conteneur"><script>jmolApplets(size_frame, 'load ./molecules/????.pdb');</script></div>
    en fait, il n'y a que le ??? qui change en fonction des utilisations client.


    J'arrive à supprimer l'ancien script sans problème en changeant l"html de la div contenant le script initialisant l'applet (en l'occurence conteneur) à "", ce qui coupe l'ancien applet.

    Par contre lorsque je remplis cette même div du <script>.... lance nouvel applet... </script> initialisant la nouvelle applet, celle-ci plante.
    En fait aucun élément HTML n'apparaît alors, mais seulement l'applet et la page charge indéfiniment (bouton spirale de chargement sans fin).


    Ceci est bien un problème AJAX car une solution très inélégante (et qui ne fonctionne pas dans la majorité des cas vu sa gourmandise en terme de ressources) consiste à loader en amont toutes les applet et à changer leurs css (visibility:hidden, size:0...) en fonction des actions utilisateurs.

    Au mieux du pire, j'aimerai juste modifier mon html (en changeant juste la div conteneur du script de loading de l'applet) et "reloader" la page avec cette petite modification texte. Je dis ceci car l'applet ne semble se charger correctement que si elle est lancée au chargement de la page elle-même.


    Si vous avez une solution ou une rustine à me proposer, je suis preneur, et très reconnaissant pour votre aide.

    Merci d'avance.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 12
    Par défaut
    Tu ne peut pas utiliser une iframe plutot qu'une div? Ce serait l'idéal pour charger ton aplet et normalement (je ne connais pas trop les frame) tu devrais pouvoir les recharger avec des gestionnaires d'evenement.

Discussions similaires

  1. Réponses: 3
    Dernier message: 02/07/2010, 23h58
  2. Positionnement de div dans une div "conteneur"
    Par Giill dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 23/11/2007, 16h54
  3. [Prototype] Texte chargé dans une <div> contenant des balises <script>
    Par wenijah dans le forum Bibliothèques & Frameworks
    Réponses: 4
    Dernier message: 22/11/2007, 17h28
  4. Réponses: 2
    Dernier message: 28/10/2007, 17h46
  5. [AJAX] Interpreter un script dans une reponse AJAX?
    Par gui38 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/10/2007, 11h55

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