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 :

[POO] page incluse via un .js n'effectue plus de js de son code.


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 74
    Points : 25
    Points
    25
    Par défaut [POO] page incluse via un .js n'effectue plus de js de son code.
    Bonjour,
    le titre semble flou je vous explique un peu.J'ai un menu flash dans ma page principale et chaque bouton inclue des page dans une div précise de ma page principal...vous me suivez? c'est léquivalent d'un switch case include xxx.php sauf que la je ne recharge qu'une partie de page, donc je fais appel au javascript notamment avec un objet xhr, et le xmlhttprequest.

    Bref dans une des pages incluses, je fais deux menu déroulants liés, et l'a j'inclue du code js entre des borne <script type="text/javascript"></script>
    Sauf que la encore le code js n'est pas considéré.

    SI
    j'accède à la page sans passer par linclusion principal (avec le xmlhttprequest) le js de ma page incluse est pris en compte(une alert pour le test apparait)
    SI
    j'accède par les boutons de mon menu déroulant soit avec l'inclusion de page, le js n'est pas pris en compte, je voulais donc savoir

    POURQUOI????


    Merci de me prendre mon post en compte...

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 74
    Points : 25
    Points
    25
    Par défaut
    je relance si quelq'un se décide a répondre....merci!

  3. #3
    Membre averti Avatar de Sacha999
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Points : 350
    Points
    350
    Par défaut
    excuse nous de ne pas être la chaque minute...
    concernant ton pb, la solution a deja ete fourni sur le fofo et durant les 5 dernier jour, bonne recherche
    Le forum c'est trop génial

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 74
    Points : 25
    Points
    25
    Par défaut
    merci pour ta réponse dsl pour les doubles post mais j'arrive jamais a retrouver les réponses,erf et je ne voix pas de réponse pouvant m'aider j'ai modifier mon code depuis il est beaucoup plus logique mais toujours pas d'exécution du js, donc voila ma fontion incluant les pages dans la page principale:

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    // JavaScript Document
    /*************************************************
    	Fonction de definition de l'object xhr
    **************************************************/
    function new_xhr(){
    	var xhr_object = null;
    	if(window.XMLHttpRequest) // Firefox et autres
    	   xhr_object = new XMLHttpRequest();
    	else if(window.ActiveXObject){ // Internet Explorer
    	   try {
                    xhr_object = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                    xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
                }
    	}
    	else { // XMLHttpRequest non supporté par le navigateur
    	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    	   xhr_object = false;
    	}
    	return xhr_object;
    }
    /*****************************************************
    	Fonction qui va recharger le contenu
    ******************************************************/
    function load_page(select) {
    	var xhr2 = new_xhr();//On crée un nouvel objet XMLHttpRequest
    	xhr2.onreadystatechange = function(){
    		if ( xhr2.readyState == 4 ){//Actions executées une fois le chargement fini
    			if(xhr2.status  != 200){//Message si il se preoduit une erreur
    				document.getElementById("corps").innerHTML ="Error code " + xhr2.status;
    			} else {//On met le contenu du fichier externe dans la div "content"
    				document.getElementById("corps").innerHTML = xhr2.responseText;
    			}
    		} 
    	}
    	xhr2.open("GET", select.split('?')[1]+".php", true);//Appel du fichier externe
    	xhr2.send(null);
    	}
    et voila une des pages filles home_cinema.php avec son code correspondant:

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    <div id="banniereFlash" style="position:absolute; height: 259px; width: 742px; border-bottom: 1px solid #666666; border-right:1px solid #666666; border-left:1px solid #666666; left: -1px; top: -2px;">
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="742" height="259">
    <param name="movie" value="banniere_pages/banniere_HomeCinema.swf">
    <param name="quality" value="high">
    <embed src="banniere_pages/banniere_HomeCinema.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="742" height="259"></embed></object>
    </object>
    </div>
     
    <?php
    // Déclaration des paramètres de connexion
    $host = "xxxxxxxxx";
     
    // Généralement la machine est localhost
    // c'est-a-dire la machine sur laquelle le script est hébergé
     
    $user = "xxxxxxxxx";
     
    $bdd = "xxxxxxxxxx";
     
    $passwd  = "xxxxxxxxx";
     
    // Connexion au serveur
    $co=mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
     
    $db=mysql_select_db($bdd,$co) or die("erreur de connexion a la base de donnees");
     
     
    ?>
     
     
    S&eacute;lectionnez une gamme:
    <br><br>
    <?php
            
            $res=mysql_query("SELECT * from Gamme ORDER BY nom_gamme",$co);
            $max=@mysql_num_rows($res);
    ?>
    <script type="text/javascript">
    function xmlhttp()
       {  var x;
          try         {  x = new ActiveXObject("Microsoft.XMLHTTP");   }
          catch (e)   {  try         {   x = new ActiveXObject("Msxml2.XMLHTTP");   }
                         catch (e)   {   try         {   x = new XMLHttpRequest();   }
                                         catch (e)   {   x=false;   }
                                     }
                      }
          return x;
       }
     
     
    function appel()
       {   var xml = xmlhttp();
          if(!xml)
                 {   alert("XmlHttpRequest non supporté");   }
          else   {   xml.onreadystatechange = function()
                     {   if(xml.readyState==4)
                         {   var opt=xml.responseText.split("\t");
                             tb2.length=0;
                             for ( var n=1;n<opt.length;n++ )
                             {   tb2.length++;
                                 tb2.options[tb2.length-1].text=opt[n];
                             }
                         }
                      }
    				  alert("*"+tb1.options[tb1.selectedIndex].text+"*");
                      xml.open("GET", "Ajax2.php?tbl2="+tb1.options[tb1.selectedIndex].text, true);
                      xml.send(null);
                 }
       }  
    </script>             
     
      <select   name="tb1" id="tb1"
                onchange='appel();'>
    	<option>Selectionnez une gamme...</option>
    	<?php
       for ($nb=0;$nb<$max;$nb++)
       {  $i=mysql_result($res,$nb,"nom_gamme");
          echo '<option>'.$i.'</option>';   
            }
       ?>
     
          </select>
    	   <br>
       S&eacute;lectionnez un produit:
       <br><br>  
          <select    name="tb2" id="tb2">  
          </select>
    <?php
      mysql_close($co);
    ?>
    c'est un peu long dsl et voila enfin le Ajax2.php appelé dans le code précédent:


    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    <?php
    header('Content-type:text/html;charset=ISO-8859-1');
    // Déclaration des paramètres de connexion
    $host = "xxxxxxx";
     
    // Généralement la machine est localhost
    // c'est-a-dire la machine sur laquelle le script est hébergé
     
    $user = "xxxxxxxxx";
     
    $bdd = "xxxxxxxxxx";
     
    $passwd  = "xxxxxxxxxx";
     
    // Connexion au serveur
    $co=mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
     
    $db=mysql_select_db($bdd,$co) or die("erreur de connexion a la base de donnees");
    //debut requete
     
       $rch="WHERE 'nom_gamme'='".$_GET["tbl2"]."'";
       $res=mysql_query("SELECT * FROM Bose ".$rch,$co);
       $max=@mysql_num_rows($res);
    	$t="";
       for ($nb=0;$nb<$max;$nb++)
       {  $i=mysql_result($res,$nb,"nom_produit");
          $t.="\t".$i;   
    	}	 
    	echo $t;
    	mysql_close($co);
    ?>

    Et encore désolée de doubler mes posts mais jespère obtenir une solution je surveillerai plus cette conversation!
    merci bcp

  5. #5
    Membre averti Avatar de Sacha999
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Points : 350
    Points
    350
    Par défaut
    ok, mais fait un effort pour retrouver tes post, sinon ca voudrait dire que tu lis jamais nos reponse et que donc ca sert a rien qu'on te reponde

    Je viens de lire le code et me demande si c'etait vraiment la solution en fin de compte:
    http://www.developpez.net/forums/sho...89#post3236669

    Sinon je pense plutot que c'est l'utilisation de "eval"

    Au pire demande au forum AJAX, je pense que tout Ajaxien a déja été confronté a ce pb
    Le forum c'est trop génial

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 74
    Points : 25
    Points
    25
    Par défaut
    Ok merci beaucoup sacha99 et désolée de pas avoir suivi les posts précédent je ferais plus attention dorénavant, jvais faire un tour sur le forum Ajax et tenter ma chance merci!

  7. #7
    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,
    réponse(s) déjà donnée(s) dans les Contributions ...

    A+
    Pour tout savoir sur l'utilisation du forum

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

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 74
    Points : 25
    Points
    25
    Par défaut
    OUé je sais j'ai laché laffaire je passe à plus simple, c'est une vrai usine à bug ce js....

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 12/06/2006, 20h03
  2. Réponses: 4
    Dernier message: 26/04/2006, 21h10
  3. Réponses: 7
    Dernier message: 13/12/2005, 16h22
  4. [POO] Problème inclusion dans une classe
    Par LordBob dans le forum Langage
    Réponses: 11
    Dernier message: 22/11/2005, 15h21
  5. Peut-on créer une page internet via JBuilder?
    Par Xavier dans le forum JBuilder
    Réponses: 2
    Dernier message: 17/02/2005, 21h21

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