• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Nie wczytuje xml do pliku html

Object Storage Arubacloud
0 głosów
516 wizyt
pytanie zadane 28 kwietnia 2017 w HTML i CSS przez wojtasso14 Początkujący (250 p.)

Witam
Mam takie pytanie otóż mam zadanie zrobić plik xml, który będzie się składał z takich węzłów:
http://www84.zippyshare.com/v/6o0Vvo0k/file.html
I czy wg kodu to będzie np. coś takiego?

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE Animals [ 
<!ELEMENT Animals (Sharks+, Whales, Dolphins)>
<!ELEMENT Whales (#PCDATA)>
<!ELEMENT Dolphins (#PCDATA)>
<!ELEMENT Sharks (White+, Blue)>
<!ELEMENT Blue (#PCDATA)>
<!ELEMENT White (Age, Food, Color)> 
<!ELEMENT Age (#PCDATA)> 
<!ELEMENT Food (#PCDATA)> 
<!ELEMENT Color (#PCDATA)> 
<!ATTLIST Sharks id CDATA "id01">
]>

<Animals>
<Sharks id="id01">
<White>
<Age>55</Age>
<Food>Fishes</Food>
<Color>White</Color>
</White>
<Blue>Blue</Blue>
</Sharks>
<Whales>Whales</Whales>
<Dolphins>Dolphins</Dolphins>
</Animals>

I drugie pytanie gdyż chciałbym wczytać ten plik xml do html ale nie wiem dlaczego go nie wczytuje
Plik xml nazywa się animals.xml i jest w jednym katalogu z plikiem html
A to kod pliku html

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Dokument bez tytułu</title> 
</head>
<body>
<script>
function loadXMLDoc() {
var xmlhttp = new XMLHttpRequest(); 
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
 exampleFunction(this);
}
};
xmlhttp.open("GET", "animals.xml", true); 
xmlhttp.send(); 
}
function exampleFunction(xml) {
var i, j;
var xmlDoc = xml.responseXML; 
var data="";
var x = xmlDoc.getElementsByTagName("Sharks"); 
var y;
for (i = 0; i <x.length; i++) {
data += "<h2>Color1 ";
data += x[i].getElementsByTagName("White")[0].childNodes[0].nodeValue ;
data +="</h2><h3>Color2 ";
 data += x[i].getElementsByTagName("Blue")[0].childNodes[0].nodeValue ;
 data += "</h3>";
y = x[i].getElementsByTagName("Whales")[0].getElementsByTagName("Whales");
data += "<p><strong>Animal</strong></p><ul>";
for(j = 0; j <y.length; j++) {
data += "<li>" + y[j].childNodes[0].nodeValue+ "</li>";
}
data += "</ul>";
}
document.getElementById("xmlContent").innerHTML = data;
}
loadXMLDoc();
</script> 

</body> 
</html> 

 

Firefox w konsoli nic nie pokazuje a chrome pokazał komunikat, że xml nie chce się załadować

index2.html:31 XMLHttpRequest cannot load file:///C:/Katalog/animals.xml. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.[/quote]


Proszę o pomoc
Pozdrawiam

1 odpowiedź

0 głosów
odpowiedź 28 kwietnia 2017 przez Comandeer Guru (601,550 p.)
Jak już wspominałem na innym forum, Ajax nie działa bez serwera. Musisz mieć serwer, inaczej nie wczytasz w taki sposób tego pliku.
komentarz 28 kwietnia 2017 przez wojtasso14 Początkujący (250 p.)
I mając serwer potem w jaki sposób wczytać ten plik?
komentarz 28 kwietnia 2017 przez Comandeer Guru (601,550 p.)
W dokładnie taki, w jaki robisz. Ten kod odpalony z serwera powinien Po Prostu Działać™
komentarz 29 kwietnia 2017 przez wojtasso14 Początkujący (250 p.)
To jakim cudem u mnie na uczelni gdzie nie ma serwera to działa od razu w taki sposób jak kod wyżej gdzie pliki są tylko razem w jednym katalogu na dysku?
komentarz 29 kwietnia 2017 przez Comandeer Guru (601,550 p.)
Zależy od przeglądarki. Niemniej większość blokuje.
komentarz 30 kwietnia 2017 przez wojtasso14 Początkujący (250 p.)
Już wysyła

Wystarczyło zaktualizować firefoxa

Dzięki za pomoc

Podobne pytania

0 głosów
0 odpowiedzi 274 wizyt
pytanie zadane 8 czerwca 2017 w JavaScript przez Damian Prymus Początkujący (380 p.)
0 głosów
1 odpowiedź 1,723 wizyt
pytanie zadane 8 sierpnia 2018 w JavaScript przez Jumpeq Początkujący (270 p.)
0 głosów
1 odpowiedź 916 wizyt
pytanie zadane 5 maja 2020 w HTML i CSS przez mm Użytkownik (890 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...