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 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="fr-FR">
<head>
<title>décodage SRFIL</title>
<link rel="shortcut icon" href="favicon.ico" />
<link rel="stylesheet" href="style.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
// <![CDATA[
// Fonction de rendu de la feuille de style XSL
function displayResult(sigle,valeur)
{
document.getElementById("content").innerHTML='';
xmlfile="res/test.xml";
xslfile="srfil.xsl";
// code for IE
if (window.ActiveXObject)
{
// Chargement de la feuille XSLT
var xslDoc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.4.0");
xslDoc.async = false;
xslDoc.load(xslfile);
//Chargement du document XML
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.4.0");
xmlDoc.async = false;
xmlDoc.load(xmlfile);
//Transformation
var xslt = new ActiveXObject("Msxml2.XSLTemplate.4.0");
xslt.stylesheet = xslDoc;
var xslProc;
xslProc = xslt.createProcessor();
xslProc.input = xmlDoc;
if ( sigle != "" && valeur != "")
{
xslProc.addParameter("filtresigle", sigle); //passage du paramètre "field"
xslProc.addParameter("filtrevalue", valeur); //passage du paramètre "order"
xslProc.addParameter("gofiltre", 1); //passage du paramètre "order"
}
else
{
xslProc.addParameter("gofiltre", 0); //passage du paramètre "order"
}
xslProc.transform();
//Affichage du résultat
document.getElementById("content").innerHTML=xslProc.output;
}
// code for Mozilla, Firefox, Opera, etc.
//else if (document.implementation && document.implementation.createDocument)
else
{
xml=loadXMLDoc(xmlfile);
xsl=loadXMLDoc(xslfile);
xsltProcessor=new XSLTProcessor();
xsltProcessor.importStylesheet(xsl);
// Si les données pour le filtrage sont fournies on transmet les paramètres
// au fichier xsl et on autorise le filtrage
if ( sigle && valeur)
{
xsltProcessor.setParameter(null, "filtresigle", sigle);
xsltProcessor.setParameter(null, "filtrevalue", valeur);
xsltProcessor.setParameter(null, "gofiltre", "1");
}
// Sinon on désactive le filtrage
else
{
xsltProcessor.setParameter(null, "gofiltre", "0");
}
// Rendu de l'affichage
resultDocument = xsltProcessor.transformToFragment(xml,document);
// Affichage dans la page web
document.getElementById("content").appendChild(resultDocument);
}
}
function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp.send("");
return xhttp.responseXML;
}
// Validation du formulaire pour le filtrage
function valider()
{
// si les données sont présentes on fourni les données de filtrage
// au script de rendu
if(document.getElementById('formfiltre').sigle.value != "" && document.getElementById('formfiltre').valeur.value != "")
{
displayResult(document.getElementById('formfiltre').sigle.value,document.getElementById('formfiltre').valeur.value);
}
// si il n'y a pas de donnée, on lance le rendu sans filtrage
else if (document.getElementById('formfiltre').sigle.value == "" && document.getElementById('formfiltre').valeur.value == "")
{
displayResult();
}
// sinon, on stop et on averti l'utilisateur
else
{
alert("Saisissez les données");
}
return false;
}
// Fonction d'effacement des données présentes dans le formulaire
function Reset()
{
document.getElementById('formfiltre').sigle.value = "";
document.getElementById('formfiltre').valeur.value = "";
displayResult();
return false;
}
// ]]>
</script>
</head>
<body onload="displayResult()">
<div id="header">
<h1><a href='http://srfil.maxk.fr'>Décodage SRFIL</a></h1>
onclick="window.open('log/test.log','log','width=650,height=600,menubar=yes,status=yes,scrollbars=yes')">test_SRFIL.log</a></h2>
</div>
<div id="filtre">
<form id="formfiltre" action="" onsubmit="return valider()" onreset="return Reset()" method="get">
<p>
<label class="formsiglelb" for="sigle">Sigle</label>
<input class="formsigle" type="text" name="sigle" value="" id="sigle" />
<label class="formvaleurlb" for="valeur">Valeur</label>
<input class="formvaleur" type="text" name="valeur" value="" id="valeur"/>
<input id="OKbouton" class="bouton" type="submit" value="OK" />
<input id="RESETbouton" class="bouton" type="reset" value="Reset" />
</p>
</form>
</div>
<div id="content">
</div>
</body>
</html> |
Partager