Witam, szukam ciągle kursów przez Google i ciągle coś nie działa. Ajax jest nadal dla mnie czarną magią.
Może poda mi ktoś prosty przykład skryptu ajaxa tak żebym to w końcu zatrybił.
Te kursy tak są napisane że nic z nich nie rozumiem a mnie jest potrzebny przykład tak na chłopski rozum.
W przyszłości chciałbym wykorzystać ajax do wymiany części strony bez przeładowania strony.
[+] Ajax podajcie prosty przyk
Ja chętnie pomogę
Przykład działania takiego skryptu:
Skrypt wygląda brzydko, no ale jest dość przejrzysty. Nie będę za bardzo go tłumaczył (bo chyba stworzenie obiektu w zależności od przeglądarki, i wczytanie wyniku wykonania jakiegoś skryptu tego nie wymaga). Pozdrawiam 

Kod: Zaznacz cały
<html>
<head>
<title>ajax</title>
<script type="text/javascript">
var XMLHttpRequestObject = false;
if (window.XMLHttpRequest){
XMLHttpRequestObject = new XMLHttpRequest();
}
else if (window.ActiveXObject){
XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}
function dane(){
if(XMLHttpRequestObject){
var p=document.getElementById("aaa");
XMLHttpRequestObject.open("GET", "skrypt.php");
XMLHttpRequestObject.onreadystatechange = function(){
if(XMLHttpRequestObject.readyState==4 && XMLHttpRequestObject.status ==200){
p.innerHTML=XMLHttpRequestObject.responseText;
}
}
XMLHttpRequestObject.send(null);
}
}
</script>
</head>
<body>
<h1>ajax jest fajny</h1>
<input type="submit" value="kliknij" onclick="dane()" />
<div id="aaa">to sie zmieni jak klikniesz</div>
</body>
</html>

Przede wszystkim trudno mówić o jakimkolwiek sensownym kursie AJAX. Sprawa jest tak naprawdę bardzo prosta (nie w sensie łatwości, chociaż to nie jest najgorsza rzecz pod słońcem, ale po prostu nie jest to jakoś strasznie rozbudowana technika).
Przede wszystkim - nie warto pisać tego typu kodu z ręki. Jest nieelegancki, ponieważ siłą rzeczy trzeba odwoływać się do różnych przeglądarek i dość kłopotliwy (jeśli w przypadku JS można mówić o działaniu niskopoziomowym, to tak właśnie jest
). Jedyne, czym dysponujesz, gdy chcesz przetworzyć lub wykorzystać zdobyte dane, to DOM z zestawem standardowych metod. Rozwiązanie wszechstronne i potężne, ale znowu - niewygodne.
Dlatego polecam raczej gotowe biblioteki JavaScript. Są to np. dojo, jquery, mootols, prototype, scriptaculous i całe mnóstwo innych. Z wymienionych korzystałem z dojo i jquery. Dojo sobie nie chwalę, bo w moim odczuciu jest marnie udokumentowane, a jego API zmienia się jak chorągiewka na wietrze i ciężko znaleźć dobre i działające przykłady. Dla odmiany jquery bardzo sobie chwalę i bardzo, bardzo mocno polecam.
Tu jest wprowadzenie od podstaw:
http://docs.jquery.com/How_jQuery_Works
A tu już konkrety - AJAX (dokumentacja + przykłady):
http://docs.jquery.com/Ajax/jQuery.ajax
edit:
bagsiur mnie uprzedził, ale bardzo dobrze, od razu poparł dowodem moją tezę, że ten kod jest paskudny i niewygodny w jakiejkolwiek obsłudze :P
Przede wszystkim - nie warto pisać tego typu kodu z ręki. Jest nieelegancki, ponieważ siłą rzeczy trzeba odwoływać się do różnych przeglądarek i dość kłopotliwy (jeśli w przypadku JS można mówić o działaniu niskopoziomowym, to tak właśnie jest

Dlatego polecam raczej gotowe biblioteki JavaScript. Są to np. dojo, jquery, mootols, prototype, scriptaculous i całe mnóstwo innych. Z wymienionych korzystałem z dojo i jquery. Dojo sobie nie chwalę, bo w moim odczuciu jest marnie udokumentowane, a jego API zmienia się jak chorągiewka na wietrze i ciężko znaleźć dobre i działające przykłady. Dla odmiany jquery bardzo sobie chwalę i bardzo, bardzo mocno polecam.
Tu jest wprowadzenie od podstaw:
http://docs.jquery.com/How_jQuery_Works
A tu już konkrety - AJAX (dokumentacja + przykłady):
http://docs.jquery.com/Ajax/jQuery.ajax
edit:
bagsiur mnie uprzedził, ale bardzo dobrze, od razu poparł dowodem moją tezę, że ten kod jest paskudny i niewygodny w jakiejkolwiek obsłudze :P
Wiecie co - ja mam chyba innego kompa :-) bo u mnie nie działa :-/
bagsiur, dzięki za skrypt ale to nijak nie działa choć w całości żywcem wklejone.
Sprawdzałem na localhoście i na http://www.ofertka.pl/ajax.html
Co jest nie tak ?
bagsiur, dzięki za skrypt ale to nijak nie działa choć w całości żywcem wklejone.
Sprawdzałem na localhoście i na http://www.ofertka.pl/ajax.html
Co jest nie tak ?
Kod: Zaznacz cały
XMLHttpRequestObject.open("GET", "skrypt.php");
