begin process at 2012 05 29 14:18:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

Framework

 > 

Ajax

 > 

Javascript/XML/XSL


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Javascript/XML/XSL

mardi 9 janvier 2007 à 15:56:39 | Javascript/XML/XSL

bewonder

Bonjour,
Je souhaite juste charger un document XML et un document XSL afin de les fusionner pour afficher le résultat dans un div.

Mais je butte sur un tas de problèmes.
Les variables xml et xsl sont bien déclarées comme des objets dans load_xml ou load_xsl mais sont à null dans load_file.
Je les ai mis en globales car je ne les récupérais pas non plus en objets par un return de la fonction.
Ce script me fait des trucs bizarres, j'ai mis en commentaire l'appel de la fonction devant m'afficher le résultat de la fusion.
Si je fais un alert de xml dans load_xml par exemple, je peux avoir plusieurs boîtes qui s'affichent.

Mes deux fichiers se fusionnent bien si j'ouvre le XML dans un navigateur, c'est juste un listing bête et méchant des données XML.

Voici le code (un amalgame de ce que j'ai pu trouvé sur le net) et merci pour vos réponses :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<SCRIPT language="Javascript">
<!--
  var xhr = null;
  var xml = null;
  var xsl = null;

  function getXhr(){
   if(window.XMLHttpRequest){ // Firefox et autres
     xhr = new XMLHttpRequest();
    if (xhr.overrideMimeType) xhr.overrideMimeType('text/xml');
   }
   else if(window.ActiveXObject){ // Internet Explorer
     try {
       xhr = new ActiveXObject("Msxml2.XMLHTTP");
     }
    catch (e) {
      xhr = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (xhr.overrideMimeType) xhr.overrideMimeType('text/xml');
   }
   else {
     alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
     xhr = false;
   }
  }

  function load_xml(value){
    getXhr();
    xhr.onreadystatechange = function(){
     if(xhr.readyState == 4 && xhr.status == 200){
        xml = xhr.responseXML;
     }
    }
    xhr.open("POST","
http://localhost/XML/essai.xml",true );
    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    //xhr.setRequestHeader("Connection", "close");
    xhr.send("quoi="+value);
  }

  function load_xsl(nomfichier){
    getXhr();
    xhr.onreadystatechange = function(){
     if(xhr.readyState == 4 && xhr.status == 200){
        xsl = xhr.responseXML;
     }
    }
    xhr.open("GET","
http://localhost/XML/essai.xsl",true );
    xhr.send(null);
  }

  function transform(ident) {
    try { /* Navigateur basé sur Gecko. */
      if (window.XSLTProcessor) {
        var xsltProcessor = new XSLTProcessor();
        xsltProcessor.importStylesheet(xsl);
        var fragment = xsltProcessor.transformToFragment(xml, document);
        var target = document.getElementById(ident);
       rng = document.createRange();
       rng.setStartBefore(target);
       while (target.hasChildNodes())target.removeChild(target.lastChild);
       target.appendChild(fragment);
      }
      else if (window.ActiveXObject) { /* ActiveX pour Internet Explorer. */
        document.getElementById(ident).innerHTML = xml.transformNode(xsl);
      }
    }
    catch (e) {
      return e;
    }
  }

  function load_file(xml_charger, xsl_charger, ident, valeur_liste) {
    load_xml(xml_charger);
    load_xsl(xsl_charger+".xsl");
    //var fichier = transform(ident);
  }

function getList(valeur_liste, nom_div_liste){
  if (nom_div_liste=='exposition_vents'){
    load_file(nom_div_liste, nom_div_liste, nom_div_liste, valeur_liste);
  }
}

-->
</script>
<title>Test xml</title>
</head>
<body>

  <FORM NAME="form1" ACTION="index.php" METHOD="POST" >
   <div id="exposition_vents">
       <select id="form_exposition" onChange="getList(this.options[this.selectedIndex].value, 'exposition_vents');">
      <option value='1'>un</option>
     <option value='2'>deux</option>
    </select>
  </div>
  </FORM>

  <script>getList('1', 'exposition_vents');</script>

</body>
</html>

vendredi 12 janvier 2007 à 16:32:43 | Re : Javascript/XML/XSL

bewonder

Réponse acceptée !

Problème résolu ici : [ Lien ]


Cette discussion est classée dans : function, load, xml, xsl, xhr


Répondre à ce message

Sujets en rapport avec ce message

prob avec Javascipt et accssoirement xml [ par Thepp ] Mon probl est 2 niveaux- je dispose d'un fichier xml et celui-ci ne comporte pas de rfrence un fichier Xsl (masque d'affichage), je voudrais trouver [XML/DTD/XSL/CSS/HTM] Exemple affichage d'images (tutorial) [ par bubuze ] [XML/DTD/XSL/CSS/HTM] Exemple affichage d'images (tutorial) Bonjour ! j'avance pas à pas en xml/xsl -> html, dans le but de créer des galeries de p [AJAX] Plusieurs Champs mis à jour à partir d'un seul [ par Souboc ] Bonjour, En m'inspirant d'un tuto, je souhaite mettre à jour plusieurs champs de formulaire en fonction du choix fait dans une dropdown. Voilà mon co realiser un questionnaire en xsl et xml. [ par ramakat ] Bonjour, voila,j'ai eu comme projet de faire un Quizz avec choix et réponses multiples,en plus clair je dois éllaborer un générateur de QCM en XSL ave transformation XML vers HTML [ par cuq ] Bonjour,J'ai une petite question concernant la transformation de page XML en HTML.  dans une de mes pages je réalise la conversion de fichier XML+XSL ajax/xmlhttprequest [ par David_monchy ] salut à tous,je développe un chat, et j'ai un problème: j'utilise une liste de connectés qui affiche en 'temps reel' les membres connectés. Seulement, DOM! [ par jnbdzjnbdz ] Questions comment je retire le contenue d'un dans un element. Jai essayer avec tout les facons que jai vue sur Internet et il en pas une qui marche. J ActiveX : Microsoft.XMLDOM ?? [ par chmartin ] Bonjour,Voici mon probléme : je genere un fichier xml assez volumineux à partir d'une base mysql via php, Je le charge via javascript :     xml = new Problème sur un return [ par Evangun ] Bonjour à tous,j'ai un problème de passage de variable d'une fonction à l'autre par un return, j'ai beau cherché je ne trouve pas. C'est load_xml ( ) Parser XML pour tranformation XSL sous firefox ? [ par rom3ro ] Bonjour,     Je souhaiterais savoir s'il était possible de pouvoir transformer des documents XML avec du XSL sous firefox, comme IE permet de le faire


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,593 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales