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] Evaluation de balise script affiché dynamiquement dans un div ne fonctionne pas


Sujet :

AJAX

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 14
    Points : 6
    Points
    6
    Par défaut [AJAX] Evaluation de balise script affiché dynamiquement dans un div ne fonctionne pas
    Hello,

    J'ai une lite déroulante qui affiche une zone de texte dans un div avec un onchange. Le code html inséré dans le div est le suivant :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <form name='formSaisieRue'>
    <input type='text' size='40' name='saisieRue' id='saisieRue' />
    <div id='saisieRue_update'></div>
    <input type='hidden' name='rue_id' value=''/>
    <input type='button' value='Ok' onclick=\"traitementsaisierue()\">
    </form>
    <script type='text/javascript'>
    alert('test');
    document.getElementById('saisieRue').focus();
    new Ajax.Autocompleter ('saisieRue', 'saisieRue_update','autoCompRue.php',
            {method: 'post', paramName: 'saisieRue', parameters: 'ville=2', afterUpdateElement: getSelectionId}
    );
    </script>

    J'utilise une fonction runscript qui permet de forcer l'exécution du code javascript contenu dans des balises <script> insérées dynamiquement dans le div trouvée dans ce topic

    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
    function runScript( txt){
      var sJs = "";
      // recuperation des scripts balises incluses
      var sScript = "<script[^>]*>([\\S\\s]*?)<\/script>";
      var sReg    = new RegExp( sScript, 'img');
      var oScript = txt.match( sReg);
      if( oScript){
        for(var i = 0; i < oScript.length; i++){
          sReg = new RegExp( sScript, 'im');
          // recuperation du code des scripts
          sJs += oScript[i].match( sReg)[1];
        }
        try{
          // execution du code
          eval( sJs);
        }catch(e){ }
      }
    }
    J'aimerais que cette zone de texte reçoive le focus à son apparition et qu'elle puisse recevoir une autocomplétion.
    Le alert('test') fonctionne, (donc la fonction runscript force bien l'exécution du code js contenu dans les balises script) mais le focus et l'autocompletion ne fonctionnent pas... Je ne vois pas bien pourquoi puisque quand j'affiche directement la zone de texte (sans le passage par le div) les 2 fonctionnent. (donc le code doit être bon...) Un vrai casse-tête pour moi ! Si une âme charitable veut bien m'aider

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    J'ai trouvé pour le focus ! Il doit y avoir une confusion entre les 2 formulaires.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.formSaisieRue.saisieRue.focus();
    Mais l'autocompletion ne marche toujours pas. En fait il semblerait que la fonction autocompleter ne soit tout simplement pas appelée... Je ne comprends pas pourquoi. Quelqu'un aurait une idée ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/11/2011, 13h09
  2. [AJAX] Contenu dynamique dans un div chargé dynamiquement
    Par black is beautiful dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 04/02/2009, 10h04
  3. [DynamicHeight] gestion de la Hauteur dynamique dans un div
    Par alavoler dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 01/10/2008, 11h44
  4. script qui marche dans la console firebug mais pas a l'execution
    Par xclam dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/05/2007, 12h16

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