Toon posts:

[XML & JS] in Firefox doet ie het niet

Pagina: 1
Acties:

Verwijderd

Topicstarter
XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0"?>
<news>
    <item>
        <id>1</id>
        <date>Datum1</date>
        <title>Titel1</title>
        <msg>Msg1</msg>
    </item>
    <item>
        <id>2</id>
        <date>Datum2</date>
        <title>Titel2</title>
        <msg>Msg2</msg>
    </item>
    <item>
        <id>3</id>
        <date>Datum3</date>
        <title>Titel3</title>
        <msg>Msg3</msg>
    </item>
</news>




[code=js]
function importNews(xmlFile)
{
if (document.implementation && document.implementation.createDocument)
{
xmlDoc = document.implementation.createDocument("", "", null);
xmlDoc.onload = createNewsTable;
}
else if (window.ActiveXObject)
{
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.onreadystatechange = function () {
if (xmlDoc.readyState == 4) createNewsTable()
};
}
else
{
alert('Uw browser ondersteunt geen XML');
return;
}
xmlDoc.load(xmlFile);
}

function createNewsTable()
{
var x = xmlDoc.getElementsByTagName('item');

for (i=0;i<x.length;i++)
{
var datum = x[i].childNodes[1].firstChild.nodeValue +": ";
var titel = x[i].childNodes[2].firstChild.nodeValue;
var bericht = x.childNodes[3].firstChild.nodeValue;

var table = document.createElement('TABLE');
table.setAttribute('class','tblXMLNews');
var tbody = document.createElement('TBODY');
table.appendChild(tbody);

var tr1 = document.createElement('TR');
var tdDatum = document.createElement('TD');
tdDatum.appendChild(document.createTextNode(datum+""+titel));
tdDatum.setAttribute('id','tdXMLNewsDatum');
tr1.appendChild(tdDatum);

var tr2 = document.createElement('TR');
var tdBericht = document.createElement('TD');
tdBericht.appendChild(document.createTextNode(bericht));
tdBericht.setAttribute('colspan','2');
tr2.appendChild(tdBericht);

tbody.appendChild(tr1);
tbody.appendChild(tr2);
document.getElementById('divXMLNews').appendChild(table);
}
}




HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
<!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">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Project Ieper</title>
    <link type="text/css" rel="stylesheet" href="opmaak.css" />
    <script type="text/javascript" src="functions.js"></script>
</head>
<body id="pgXmlNews" onload="importNews('news.xml');">
    <div class="divPgTitel">NIEUWSBERICHTEN:</div>
    <div id="divXMLNews"></div>
</body>
</html>




Dit werkt perfect in IE, niet in FF. Wat doe ik verkeerd?

Ook krijg ik soms de melding "[element] 'has no properties' " Wat is hiervan de oorzaak?

Alvast bedankt voor de hulp!

[ Voor 73% gewijzigd door Verwijderd op 20-04-2006 17:31 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

En toen je begon te debuggen in Firefox welke errors zag je verschijnen? :)


Overigens is het makkelijk om je code tussen bijbehorende code blokken te zetten:

[code=xml][/]
[code=js][/]
[code=html][/]

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Topicstarter
Verkregen errors in FF:
  1. x[i].childNodes[2].firstChild has no properties
  2. td.firstChild.style has no properties
  3. td.firstChild.style has no properties (6 regels verder)

Verwijderd

Ik vermoed dat dit te maken heeft met de verschillen in whitespace-afhandeling tussen IE en FF. Verwijder eens alle whitespace uit je XML document en probeer het nog eens.

Verwijderd

Topicstarter
En toen zag hij dat het goed was....

Mijn xml structuur is nu wel om zeep, maar het werkt!

Thx !

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Of je zoekt even door en vind andere oplossingen om whitespaces te negeren en door te gaan ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Deze hoort daarom ook in je bookmarks te staan: http://developer.mozilla.org/en/docs/Whitespace_in_the_DOM ;)

Intentionally left blank

Pagina: 1