![]() |
![]() |
--void-- |
![]()
Post
#1
|
Goście ![]() |
Kod var pt=0; function getQuestions() { obj=document.getElementById("question"); obj.firstChild.nodeValue="(please wait)"; ajaxCallback = nextQuestion; ajaxRequest("questions.xml"); } function nextQuestion() { questions = ajaxreq.responseXML.getElementsByTagName("q"); obj=document.getElementById("question"); if (pt < questions.length) { q = questions[pt].firstChild.nodeValue; obj.firstChild.nodeValue=q; } else { obj.firstChild.nodeValue="(no more questions)"; } } Bardzo proszę o pomoc. Ten fragment skryptu nie działa, konkretnie nie pobiera danych z pliku questions.xml, który wygląda tak: Kod <?xml version="1.0" ?> <questions> <q>Pytanie</q> </a>Odpowiedź</a> </questions> (IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif) Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 890 Pomógł: 65 Dołączył: 13.11.2005 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
--void-- |
![]()
Post
#3
|
Goście ![]() |
Po prostu pomyliłem się przy przepisywaniu.
Jeśli nic innego się nie rzuca w oczy, to napiszę całą aplikację: Kod ajaxquiz.html
Kod ajax.js: Kod // zmienne globalne śledzące żądanie // i funkcję do wywołania na koniec var ajaxreq=false, ajaxCallback; // ajaxRequest: tworzy żądanie function ajaxRequest(filename) { try { // Firefox / IE7 / inne ajaxreq= new XMLHttpRequest(); } catch (error) { try { // IE 5 / IE 6 ajaxreq = new ActiveXObject("Microsoft.XMLHTTP"); } catch (error) { return false; } } ajaxreq.open("GET",filename); ajaxreq.onreadystatechange = ajaxResponse; ajaxreq.send(null); } // ajaxResponse: czeka na odpowiedź i wywołuje funkcję function ajaxResponse() { if (ajaxreq.readyState !=4) return; if (ajaxreq.status==200) { // jeśli żądanie się powiodło... if (ajaxCallback) ajaxCallback(); } else alert("Błąd żądania: " + ajaxreq.statusText); return true; } Kod questions.xml: Kod <?xml version="1.0" ?> <questions> <q>Pytanie</q> <a>Odpowiedź</a> </questions> Proszę o pomoc, bo zależy mi na tym skrypcie... |
|
|
--void-- |
![]()
Post
#4
|
Goście ![]() |
ehh, jeszcze quiz.js
Kod // zmienna globalna qn jest numerem bieżącego pytania
var qn=0; // wczytaj pytania z pliku XML function getQuestions() { obj=document.getElementById("question"); obj.firstChild.nodeValue="(please wait)"; ajaxCallback = nextQuestion; ajaxRequest("questions.xml"); } // wyświetl następne pytanie function nextQuestion() { questions = ajaxreq.responseXML.getElementsByTagName("q"); obj=document.getElementById("question"); if (qn < questions.length) { q = questions[qn].firstChild.nodeValue; obj.firstChild.nodeValue=q; } else { obj.firstChild.nodeValue="(no more questions)"; } } // sprawdź odpowiedź użytkownika function checkAnswer() { answers = ajaxreq.responseXML.getElementsByTagName("a"); a = answers[qn].firstChild.nodeValue; answerfield = document.getElementById("answer"); if (a == answerfield.value) { alert("Dobrze!"); } else { alert("Źle. Poprawna odpowiedź brzmi: " + a); } qn = qn + 1; answerfield.value=""; nextQuestion(); } // Ustaw funkcje obsługi zdarzeń dla przycisków obj=document.getElementById("startq"); obj.onclick=getQuestions; ans=document.getElementById("submit"); ans.onclick=checkAnswer; |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 15:22 |