Archief - XML: Een XSLT bestand dynamisch maken

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Fraggie

Legacy Member
Haai,

ik zit met het volgende probleem. Ik heb een XML file waarin ik CD's beschrijf (album, artiest..), mbv van een XSLT bestand geef ik daar vorm aan. Nu is het de bedoeling dat ik alle CD's kan orderen op bv album/artiest..

Om te sorteren gebruik ik:
HTML:
<xsl:sort select="album" />
Nu is dit eens ingesteld, vast, ik kan ze niet meer aanpassen.. Wat ik al geprobeerd heb is de regel te schrijven met JS, maar dan neemt geen enkele browser de file meer aan.

Ook de xsl tag de attribuut id geven, om dan vervolgens met document.getElementById() aan te spreken, mag niet volgens IE en geeft JS errors in Firefox/Opera.

Voor de duidelijkheid, is PHP of dergelijke gebruiken geen optie.

Iemand een idee, of zie ik iets over het hoofd?

*Oh ja, de manier waarom ik het nu doe is:
Ik maak een tabel waarin alle data komt, en de table header geef ik een link mee bv: ?artiest, dan lees ik de titel uit met JS.

Fraggie

Legacy Member
Ik heb een vrij omslachtige manier gevonden om dit op te lossen. Het werkt wel alleen in IE:
HTML:
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Oefening 02 XML: Multimedia verzamelingen</title>
<script type="text/javascript">
<!--
function Scan() {
 var xml = new ActiveXObject("Microsoft.XMLDOM");
 var xsl = new ActiveXObject("Microsoft.XMLDOM");
 xml.async = false;
 xsl.async = false;
 xml.load("verzameling.xml");
...
  xsl.load(xslBestand+".xsl");
  document.all.infoTabel.innerHTML = (xml.transformNode(xsl));
...
}
-->
</script>
</head>
<body>
<div id="infoTabel"></div>
<script type="text/javascript">Scan();</script>
</body>
</html>
Per onderdeel dat ik wil sorteren moet er een nieuwe xsl file gemaakt worden (bv cd-artiest.xsl; dvd-score.xsl). Met een html pagina laad ik de gegevens in die ik mee geef met de URL (code is nu weg gelaten).

Het grote nadeel is dat ik nu met 9 xsl files zit.. Maar het werkt.. :unsure:
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan