Avatar billede ofirpeter Nybegynder
16. marts 2010 - 18:32 Der er 14 kommentarer og
1 løsning

Avanceret XML til HTML

Hej,
Jeg har en xml fil der er opbygget på følgende måde:

<xml xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA0FF14882" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C1FF82" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema">
- <s:Schema id="RowsetSchema">
- <s:ElementType name="row" content="eltOnly" rs:CommandTimeout="30">
- <s:AttributeType name="ows_LinkTitle" rs:name="Titel" rs:number="1">
  <s:datatype dt:type="string" dt:maxLength="512" />
  </s:AttributeType>
  </s:ElementType>
  </s:Schema>
- <rs:data>
  <z:row ows_LinkTitle="DETTE ER INDHOLD" />
  </rs:data>
</xml>

Jeg leder efter en måde hvor jeg kan få hentet "DETTE ER INDHOLD" ud i html, ved en eller anden form for XML reader. Jeg forstår at javascript måsle er en mulighed, har desværre ikke mulighed for at bruger PHP, ASP eller lign.

Nogen der kan hjælpe mig?

Med venlig hilsen
Peter Juel Jensen
Avatar billede keysersoze Guru
16. marts 2010 - 18:34 #1
Avatar billede ofirpeter Nybegynder
16. marts 2010 - 18:36 #2
Hej Keyseroze,
Mange tak for linket. Jeg har allerede været en del rundt på siden, men det er ikke lykkedes mig at applikere det på mit lidt mere avancerede XML dokument.
Avatar billede keysersoze Guru
19. marts 2010 - 00:19 #3
hvordan mener du at det er mere avanceret?
Avatar billede ofirpeter Nybegynder
19. marts 2010 - 15:22 #4
Jeg mener, at jeg ikke kan få præcist "DETTE ER INDHOLD" ud. Jeg kan faktisk ikke få noget som helst ud fra mit script.
Kan godt få eksemplerne til at virke, men jeg ikke applikere mit eget på øvelserne.
Avatar billede keysersoze Guru
20. marts 2010 - 10:14 #5
Hvordan ser dit hidtige forsøg ud?
Avatar billede ofirpeter Nybegynder
14. april 2010 - 09:11 #6
Jeg har forsøgt dette, men den spytter ikke noget ud:

XLS

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
  <h2>My CD Collection</h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th align="left">Indhold</th>
    </tr>
    <xsl:for-each select="RowsetSchema">
    <tr>
      <td><xsl:value-of select="rs:data" /></td>
    </tr>
    </xsl:for-each>
  </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>


HTML

<html>
<head>
<script>
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;
}

function displayResult()
{
xml=loadXMLDoc("XML.xml");
xsl=loadXMLDoc("catalog.xsl");
// code for IE
if (window.ActiveXObject)
  {
  ex=xml.transformNode(xsl);
  document.getElementById("example").innerHTML=ex;
  }
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation && document.implementation.createDocument)
  {
  xsltProcessor=new XSLTProcessor();
  xsltProcessor.importStylesheet(xsl);
  resultDocument = xsltProcessor.transformToFragment(xml,document);
  document.getElementById("example").appendChild(resultDocument);
  }
}
</script>
</head>
<body onload="displayResult()">
<div id="example" />
</body>
</html>
Avatar billede keysersoze Guru
17. april 2010 - 10:58 #7
du må prøve at sætte lidt debug-hjælpemarkeringer ind rundt omkring for at se præcist hvor langt den når - men det første jeg lægger mærke til er din foreach hvor du selecter på "RowsetSchema", men RowsetSchema er et id og ikke en node, så den går ikke.
Avatar billede ofirpeter Nybegynder
19. april 2010 - 15:02 #8
Tak for svaret. Kan du fortælle mig hvad der er en node i mit eksempel?
Avatar billede ofirpeter Nybegynder
19. april 2010 - 15:11 #9
Tak for svaret. Kan du fortælle mig hvad der er en node i mit eksempel?
Avatar billede keysersoze Guru
19. april 2010 - 19:05 #10
<s:Schema id="RowsetSchema">

s:Schema = node
id = attribut
RowsetSchema = attribut-værdi
Avatar billede ofirpeter Nybegynder
20. april 2010 - 09:00 #11
Jeg kan simpelthen ikke få det til at spille. Alle eksempler definerer værdier der ligger i en node. f.eks. <test> Indhold </test>. Disse er ligetil at få ud, men hvordan jeg får attributværdien er mig simpelthen en gåde. Forstår ikke hvordan det kan være så svært.
Avatar billede keysersoze Guru
20. april 2010 - 23:30 #12
at forespørge på XML er et sprog som hvis du skulle tale sammen med en database og det kræver jo også masser af øvelse - specielt hvis man skal ud over de simple select, insert, delete etc - og det beviser jo at programmering er et fag på lige fod med alle andre fag; enhver kan sikkert bage en kage eller slå et søm i men det går jo ikke en til hverken konditor eller tømrer.

jeg tror ikke helt jeg kan følge dig - vil du lave din foreach ud fra attribut-værdien eller?
Avatar billede keysersoze Guru
27. juni 2010 - 10:46 #13
Kommet videre?
Avatar billede ofirpeter Nybegynder
13. januar 2011 - 13:48 #14
Hej keysersoze, tak for hjælpen. Svar gerne.
Avatar billede keysersoze Guru
13. januar 2011 - 18:43 #15
svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester