Ajax je tamo visoko visoko zbog najvećih razloga za upotrebu jQueryja. JQuery ne samo da rješava probleme s više preglednika, već čini sintaksu vrlo jednostavnom za korištenje i razumijevanje.
U ovom videu ubodno objašnjavamo što je Ajax uopće. Gledamo element obrasca koji kada je poslan, GET ili POST zahtjev (kako je određeno atributom metode) na URL koji navedete (kako je određeno atributom akcije). To je samo HTML, tamo se uopće ne događa pozadinski kod ili JavaScript. Ali ta će prijava uzrokovati promjenu stranice, doslovno ponovno učitavanje na novom URL-u, baš poput klika na vezu.
Ajax nam omogućuje da taj GET ili POST zahtjev napravimo u pozadini, bez ponovnog učitavanja stranice. U osnovi je to cijela poanta Ajaxa. I vrlo je moćan. U velikoj je mjeri zaslužan zašto moderne web stranice rade i osjećaju se onako kako rade.
Ajax se nekad "zauzimao za" asinkroni JavaScript i XML, ali to se u današnje vrijeme uglavnom zanemaruje jer to ne znači puno. Također otud i dekapitalizacija. Možda ćete ponekad vidjeti i "XHR", što je skraćenica od XMLHttpRequest, što je matična jezgra Ajaxa.
Razlika između GET i POST u osnovi je: GET je za dobivanje informacija i ne bi trebao biti odgovoran za promjenu podataka, a POST je posebno za promjenu podataka. Slobodno pročitajte više o tome na ovoj StackOverflow niti.
Izrada GET zahtjeva u jQueryju nevjerojatno je jednostavna:
$.get( "URL", function(data) ( // do something with data )); ));
URL je mjesto odakle se nadate dobiti podatke. Drugi je parametar funkcija povratnog poziva koja se izvodi kada je zahtjev Ajax bio uspješan. Najvažniji je parametar prvi, podatak, koji sadrži informacije dobivene iz zahtjeva.
Zahtjevi Ajaxa ponekad mogu propasti. Jedan od razloga tog neuspjeha mogao bi biti sam preglednik i njegove sigurnosne politike. I sami preglednici uvrštavaju pravila o tome odakle se sadržaj može zatražiti. Zahtjevi se uvijek mogu uputiti na istu domenu s koje dolazi zahtjev. Ali ako je u pitanju druga domena, ta će je druga domena morati posebno dopustiti.
Sve o tome možete pročitati na enable-cors.org. CORS označava „Cross-Origin Resource Sharing“ (Zajedničko korištenje izvora). Pogledamo primjer gdje CORS nije omogućen, a Ajaxov zahtjev ne uspije. Jedan standardni i jednostavan način da se to popravi, pod pretpostavkom da je poslužitelj Apache, jest postavljanje zaglavlja koje posebno omogućuje CORS kroz datoteku .htaccess:
Header set Access-Control-Allow-Origin "*"
U videozapisu samo premještamo zahtjev Ajaxa na CodePen, koji prema zadanim postavkama dobro obrađuje Ajax.
Lako sirasto:
Pogledajte Pen fBInl Chrisa Coyiera (@chriscoyier) na CodePenu