[XML] extern XML bestand aanroepen werkend onder Firefox

Pagina: 1
Acties:
  • 53 views sinds 30-01-2008

  • bladeoner911
  • Registratie: Maart 2005
  • Laatst online: 07-01-2022
Ik ben bezig data uit een xml bestand in een html tabel te zetten alleen lukt het me niet om het externe xml bestand aan te roepen via html. Als je gebruik maakt van: src="Bestand.xml" dan wordt dit wel getoond in IE maar niet in FireFox. Kan iemand mij hierbij helpen.

  • Rowanov
  • Registratie: Februari 2004
  • Niet online

Rowanov

Kop eens wat anders...

Dat klopt ook, het is IE only.

Verwijderd

Dat is IE specifiek. En laat wat meer code zien voortaan.

  • bladeoner911
  • Registratie: Maart 2005
  • Laatst online: 07-01-2022
Hoe kan ik dat aanpassen zodat het ook onder Firefox werkt?
Dit is me code:

<html>
<head>
<title>Bestellingen</title>

<style type="text/css">
xml {display: none;}
</style>

<script>
function findTable(id)
{
id = "#" + id;
var tables = document.getElementsByTagName("table");
var i;
for (i=0; i < tables.length; i++) {
var table = tables[i];
if (table.getAttribute("datasrc") == id)
return table;
}
return null;
}

function getDataFieldNames(table)
{
var array = new Array();
var divs = table.getElementsByTagName("div");
var i;
for (i=0; i < divs.length; i++) {
var div = divs[i];
var datafld = div.getAttribute("datafld");
if (datafld != null && datafld != "") {
array[i] = datafld;
}
}

if (array.length < 1) {
return null;
}

return array;
}

function getSrcFieldValues(xml, fieldNames)
{
var srcs = new Array();
var i;
for (i=0; i < fieldNames.length; i++) {
var field = fieldNames[i];
srcs[field] = xml.getElementsByTagName(field);
}

return srcs;
}

function fillTable(table, srcs)
{
var trtemplate = table.firstChild.removeChild(table.firstChild.firstChild);
var tdtemplate = trtemplate.removeChild(trtemplate.firstChild);

while (trtemplate.firstChild) {
trtemplate.removeChild(trtemplate.firstChild);
}

table = table.firstChild; // tbody, really

var cols = 0;
for (field in srcs) {
srcs[cols++] = field;
}

var row;
for (row = 0; row < srcs[srcs[0]].length; row++) {
var tr = trtemplate.cloneNode(true);
var col;
for (col=0; col < cols; col++ ) {
var td = tdtemplate.cloneNode(true);
var div = td.firstChild;
div.setAttribute("datafld", srcs[col]);
var textNode = document.createTextNode(srcs[srcs[col]][row].firstChild.nodeValue);
div.appendChild(textNode);
tr.appendChild(td);
}
table.appendChild(tr);
}
}


function loadTableData()
{
if (!document.all) {
var i;
var xmlNodes = document.getElementsByTagName("xml");
for (i=0; i< xmlNodes.length; i++) {
var xml = xmlNodes[i];
var id = xml.getAttribute("id");
var table = findTable(id);
var fields = getDataFieldNames(table);
var srcs = getSrcFieldValues(xml, fields);
fillTable(table, srcs);
}
}
}
</script>

</head>

<body onload="loadTableData();">

<xml id="xmlNames">
<DVDS>
<DVD>
<Titel>American Pie 3: The Wedding</Titel>
<Genre>Comedy</Genre>
<Jaar>2003</Jaar>
<Speelduur>96 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
<DVD>
<Titel>The Lord of the Rings: The Return of the King</Titel>
<Genre>Fantasie/Actie/Avontuur</Genre>
<Jaar>2003</Jaar>
<Speelduur>201 min.</Speelduur>
<Prijs>18,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Oceans Eleven</Titel>
<Genre>Actie</Genre>
<Jaar>2001</Jaar>
<Speelduur>116 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Shark Tale</Titel>
<Genre>Animatie/Comedy/Familiefilm</Genre>
<Jaar>2004</Jaar>
<Speelduur>90 min.</Speelduur>
<Prijs>18,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Saw</Titel>
<Genre>Thriller/Horror</Genre>
<Jaar>2004</Jaar>
<Speelduur>102 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Collateral</Titel>
<Genre>Thriller/Drama</Genre>
<Jaar>2004</Jaar>
<Speelduur>120 min.</Speelduur>
<Prijs>18,- Euro</Prijs>
</DVD>
<DVD>
<Titel>The Last Castle</Titel>
<Genre>Drama/Actie</Genre>
<Jaar>2001</Jaar>
<Speelduur>131 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Me,Myself and Irene</Titel>
<Genre>Comedy/Avontuur</Genre>
<Jaar>2000</Jaar>
<Speelduur>116 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
<DVD>
<Titel>The Hot Chick</Titel>
<Genre>Comedy</Genre>
<Jaar>2000</Jaar>
<Speelduur>104 min.</Speelduur>
<Prijs>18,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Troy</Titel>
<Genre>Actie/Avontuur/Drama/Oorlog</Genre>
<Jaar>2004</Jaar>
<Speelduur>163 min.</Speelduur>
<Prijs>18,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Blade: Trinity</Titel>
<Genre>Actie/Horror/Thriller</Genre>
<Jaar>2004</Jaar>
<Speelduur>113 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
<DVD>
<Titel>The Terminal</Titel>
<Genre>Drama/Comedy</Genre>
<Jaar>2004</Jaar>
<Speelduur>128 min.</Speelduur>
<Prijs>18,- Euro</Prijs>
</DVD>
<DVD>
<Titel>The Texas Chainsaw Massacre</Titel>
<Genre>Horror/Actie</Genre>
<Jaar>2003</Jaar>
<Speelduur>98 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Shrek 2</Titel>
<Genre>Animatie/Comedy/Familiefilm/Fantasy</Genre>
<Jaar>2004</Jaar>
<Speelduur>92 min.</Speelduur>
<Prijs>18,- Euro</Prijs>
</DVD>
<DVD>
<Titel>Spiderman 2</Titel>
<Genre>Actie/Fantasy/Thriller/Science Fiction</Genre>
<Jaar>2004</Jaar>
<Speelduur>127 min.</Speelduur>
<Prijs>15,- Euro</Prijs>
</DVD>
</DVDS>
</xml>


<h1>Bestellingen</h1>


<table datasrc="#xmlNames" border="1">

<tr>
<td><div datafld="Titel" /></td>
<td><div datafld="Genre" /></td>
<td><div datafld="Jaar" /></td>
<td><div datafld="Speelduur" /></td>
<td><div datafld="Prijs" /></td>
</tr>
</table>


</body>
</html>

  • Willem
  • Registratie: Februari 2001
  • Laatst online: 18:03
Ja dikke neus.
We zijn hier niet van de drop hier je source en de w&g mensen lossen je probleem op- brigade.

Motor onderhoud bijhouden


Dit topic is gesloten.