cześć, jestem absolutnie zielona jeśli chodzi o techniki http://w3schools.com/xml/xml_applications.aspramowaniem.
zaczęłam robić tutorial nt. xml-a i okazuje się, że nie potrafię nawet skorzystać ze zrobionego już przykładu!
Tzn. wzięłam przykład ze strony http://w3schools.com/xml/xml_applications.asp, konkretnie: http://w3schools.com/xml/tryit.asp?filename=tryxml_app, gdzie wyświetlane są w tabeli elementy z pliku xml: http://w3schools.com/xml/cd_catalog.xml
chciałam przykład przerobić tak, żeby pasował do mojego pliku xml i z wprowadzonymi zmianami kod nie działa.
Czy mógłby ktoś (będę bardzo wdzięczna) rzucić okiem i powiedzieć, co zrobiłam źle? Bo ja nie mam pomysłu.
Oto kod:
<!DOCTYPE html>
<html>
<head>
<script>
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","struktura.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
x=xmlDoc.getElementsByTagName("film");
function displayfilmInfo(i)
{
title=(x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue);
director=(x[i].getElementsByTagName("director")[0].childNodes[0].nodeValue);
release_date=(x[i].getElementsByTagName("release_date")[0].childNodes[0].nodeValue);
country=(x[i].getElementsByTagName("country")[0].childNodes[0].nodeValue);
runtime=(x[i].getElementsByTagName("runtime")[0].childNodes[0].nodeValue);
txt="title "+title+"<br>director: "+director+"<br>releae_date: "release_date"<br>country: "+country+"<br>runtime: "+runtime ;
document.getElementById("showfilm").innerHTML=txt;
}
</script>
</head>
<body>
<div id='showfilm'>Kliknij w tytul filmu, by wyswietlic wiecej informacji na jego temat</div><br>
<script>
document.write("<table border='1'>");
for (var i=0;i<x.length;i++)
{
document.write("<tr onclick='displayfilmInfo(" + i + ")'>");
document.write("<td>");
document.write(x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue);
document.write("</td><td>");
document.write(x[i].getElementsByTagName("director")[0].childNodes[0].nodeValue);
document.write("</td></tr>");
}
document.write("</table>");
</script>
</body>
</html>
A oto treść mojego pliku xml, zamieszczonego w tym samym folderze co plik z html:
<?xml version="1.0" encoding="ISO-8859-2"?>
<catalog>
<film>
<title> Skazani na Shawshank </title>
<director> Frank Darabont </director>
<release_date>1994</release_date>
<country> USA </country>
<runtime>142 min</runtime>
</film>
<film>
<title>Ojciec Chrzestny</title>
<director>Francis Ford Coppola</director>
<release_date>1972</release_date>
<country>USA</country>
<runtime>175 min</runtime>
</film>
<film>
<title>Pulp Fiction</title>
<director>Quentin Tarantino</director>
<release_date>1994</release_date>
<country>USA</country>
<runtime>154 min</runtime>
</film>
<film>
<title>Incepcja </title>
<director>Christopher Nolan</director>
<release_date>2010</release_date>
<country>USA</country>
<runtime>148 min</runtime>
</film>
<film>
<title>Milczenie owiec </title>
<director>Jonathan Demme</director>
<release_date>1991</release_date>
<country>USA</country>
<runtime>118 min</runtime>
</film>
<film>
<title>Siedem </title>
<director> David Fincher</director>
<release_date>1995</release_date>
<country>USA</country>
<runtime>127 min</runtime>
</film>
</catalog>
Bardzo proszę o pomoc!
dodanie znaczników <code class="html"> oraz <code class="xml"> - fp
usunięcie zbędnego załącznika - fp