<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html>
<head>
<title>Dokument title</title>
<script language="Javascript">
var IE = (navigator.appName == "Microsoft Internet Explorer") ? true : false;
var xmlHttp = null;
var arrXML = new Array();
function getXML(url) {
// for Mozilla and FireFox
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
// for IE
} else if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlHttp != null) {
xmlHttp.onreadystatechange = onResponse;
xmlHttp.open("GET", url, true);
xmlHttp.send(null);
} else {
alert("Your browser does not support XMLHTTP.");
}
}
function checkReadyState(obj) {
if (obj.readyState == 4) {
if(obj.status == 200) {
return true;
} else {
alert("Error occured during retrieving XML data");
return false;
}
}
}
function onResponse() {
if (checkReadyState(xmlHttp)) {
var response = xmlHttp.responseXML.documentElement;
x.response.getElementByTagName("ware");
for (a=0;a<x.length;a++) {
arrXML[a][0] = x[a].getElementByTagName("categori")[0].firstChild.data;
arrXML[a][1] = x[a].getElementByTagName("producer")[0].firstChild.data;
arrXML[a][2] = x[a].getElementByTagName("name")[0].firstChild.data;
arrXML[a][3] = x[a].getElementByTagName("energi")[0].firstChild.data;
}
}
}
function PreLoadScript() {
var oList = document.getElementById("Main");
var arrUnduplicated = new Array();
for (a in arrXML) {
arrUnduplicated[a] = unduped[arrXML[a][0]];
}
for (a in arrUnduplicated) {
var newoOpt = document.createElement("option");
newoOpt.text = arrUnduplicated[a];
newoOpt.value = arrUnduplicated[a];
if (IE) {oList.options.add(newoOpt);}
else {oList.options.add(newoOpt, null);}
}
}
function SetDataToSelect(selVal, id) {
var oList = document.getElementById("Sub" + id);
var arrUnduplicated = new Array();
//sletter indholdet af de næste selects
if (document.getElementById("Sub" + id).options.length) {
for (a=id;a<5;a++) {
var tmpoList = document.getElementById("Sub" + a);
if (!tmpoList.options.length) {continue;}
while (tmpoList.options.length) {
tmpoList.options.remove(0);
}
}
}
for (a in arrXML) {
if (arrXML[a][id] == selVal) {
arrUnduplicated[a] = unduped[arrXML[a][id]];
}
}
for (a in arrUnduplicated) {
var newoOpt = document.createElement("option");
newoOpt.text = arrUnduplicated[a];
newoOpt.value = arrUnduplicated[a];
if (IE) {oList.options.add(newoOpt);}
else {oList.options.add(newoOpt, null);}
}
}
}
</script>
</head>
<body onload="getXML('food.xml'); PreLoadScript();">
<form>
<select
multiple="true"
onchange="SetDataToSelect(this.options[this.selectedIndex].value, '1');"
id="Main"
></select>
<select
multiple="true"
onchange="SetDataToSelect(this.options[this.selectedIndex].value, '2');"
id="Sub1"
></select>
<!--<select
multiple="true"
onchange="addToCart(this.options[this.selectedIndex].value);"
id="Sub2"
></select>-->
</form>
</body>
</html>
får fejl i følgende:
linie 1, getXML er ikke defineret
linie 88, syntax error manglende }
Kan ikke gennemskue nogle af fejlene men har sikkert noget med glemsomhed at gøre, eller min XML forbindelse, er der nogen der lige vil tjekke om det jeg har gjort er korrekt indenfor XML og evt resten også?
Mvh Carsten