[Javascript] zoeken in XML-bestand + andere browsers?

Pagina: 1
Acties:

  • Ramon
  • Registratie: Juli 2000
  • Laatst online: 07:31
Hoi,

Ik ben bezig met een applicatie die een XML bestand moet inlezen vanaf cd, deze weergeven, en erin zoeken.

Ik heb tot nu toe de volgende code gevonden:

HTML:
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
<html>
<body>
<script language="JavaScript" type="text/javascript">
<!--

function parseNode(node, searchterm)
{
      for (var i=0; i<node.childNodes.length; i++)  // alle childnodes aflopen
      {
            var x = node.childNodes.item(i);
                
            document.write("<b>" + x.nodeName + "</b>");  // print nodenaam
            if (x.nodeType == "1")      // van het type "element"?
            {
                  for (var j=0; j < x.attributes.length; j++)  // alle attributen aflopen
                  {      
                        var y = x.attributes.item(j);
                        document.write(" ("+ y.name);  // print attribuutnaam
                        document.write("="+ y.value);  // print waarde
                        document.write(") ");
                  }
            }            
            if (x.childNodes.length > 1)  // heeft de node meerdere childnodes?
            {
                  document.write("<BLOCKQUOTE>");
                  parseNode(x);  // recursief verder parsen
                  document.write("</BLOCKQUOTE>");
            }
            else
            {
                  document.write(": ");
                  document.write(x.text);  // eindpunt dus tekst printen
                  document.write("<br>");
            }
      }
}

document.write("<h1>XML Parsing</h1>");

var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.load("verwerkingen.xml");

parseNode(xmlDoc.documentElement, "ark");

// -->
</script>
</body>
</html>

mijn XML bestand ziet er zo uit, als dat nog invloed heeft:

XML:
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0"?>
<verwerkingen>
    <verwerking bestand="1-4noachbou.jpg">
        <bijbeltekst>genesis 6</bijbeltekst>
        <trefwoord>ark</trefwoord>
        <groep>1</groep>
        <groep>2</groep>
        <groep>3</groep>
        <groep>4</groep>
        <soort>kleurplaat</soort>
    </verwerking>
</verwerkingen>
(groep en trefwoord kunnen in aantal veranderen)

Mijn probleem:
- Hoe gebruik ik deze code om in de XML te zoeken?
- Hoe maak ik deze code cross-browser?

Alvast Bedankt!

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Hoe maak ik deze code cross-browser?
Opera ondersteuning zal je nooit gaan lukken, maar Mozilla heeft wel methoden ingebouwd zitten om XML te laden en te parsen.
Zie hier voor een crossbrowser voorbeeld :)

Intentionally left blank


  • Ramon
  • Registratie: Juli 2000
  • Laatst online: 07:31
Dank! denk dat ik daar wel even mee vooruit kan. Weet je misschien ook hoe/of het zoeken in een XML bestand hiermee werkt?

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Tampie schreef op 23 May 2003 @ 12:17:
Dank! denk dat ik daar wel even mee vooruit kan. Weet je misschien ook hoe/of het zoeken in een XML bestand hiermee werkt?
Je zal gewoon met een stukje code door je <trefwoord> nodes heen moeten gaan om te kijken of de zoektermen overeen komen. Voor zover ik weet is er geen DOM method om te zoeken in een document.

Intentionally left blank