Ajax se tam najvišje uvršča po največjih razlogih za uporabo jQueryja. JQuery ne samo, da odpravlja težave med brskalniki, temveč je sintaksa zelo enostavna za uporabo in razumevanje.
V tem videu si zabodemo, da razložimo, kaj Ajax sploh je. Ogledamo si element obrazca, ki ob oddaji zahteva GET ali POST (kot določa atribut metode) na URL, ki ga navedete (kot določa atribut dejanja). To je samo HTML, tam se sploh ne dogaja zaledna koda ali JavaScript. Toda ta oddaja bo povzročila, da se bo stran spremenila, dobesedno znova naložila na novi URL, tako kot klik na povezavo.
Ajax nam omogoča, da zahtevamo GET ali POST v ozadju, ne da bi ponovno naložili stran. V bistvu je to celotna poanta Ajaxa. In je zelo močan. V veliki meri je odgovorna za to, zakaj sodobna spletna mesta delujejo in se počutijo tako, kot delajo.
Ajax je včasih "pomenil" asinhroni JavaScript in XML, vendar je to danes v veliki meri prezrto, ker to ne pomeni veliko. Od tod tudi dekapitalizacija. Včasih boste morda videli tudi »XHR«, ki je okrajšava za XMLHttpRequest, ki je osnovna tehnologija Ajaxa.
Razlika med GET in POST je v bistvu: GET je namenjen pridobivanju informacij in ne bi smel biti odgovoren za spreminjanje podatkov, POST pa posebej za spreminjanje podatkov. Preberite več o tem v tej niti StackOverflow.
Izdelava zahteve GET v jQueryju je neverjetno enostavna:
$.get( "URL", function(data) ( // do something with data )); ));
URL je tja, od katerega upate dobiti podatke. Drugi parameter je funkcija povratnega klica, ki se zažene, ko je bila zahteva Ajax uspešna. Najpomembnejši parameter je prvi, podatki, ki vsebuje informacije, ki jih je dobil iz zahteve.
Zahteve Ajaxa lahko včasih ne uspejo. Eden od razlogov za to je lahko brskalnik sam in njegove varnostne politike. V sami brskalniki so vpeta pravila, od kod lahko zahtevate vsebino. Zahteve lahko vedno pošljete na isto domeno, iz katere prihaja zahteva. Če pa gre za drugačno domeno, jo mora ta druga domena posebej omogočiti.
Vse o tem lahko preberete na enable-cors.org. CORS pomeni „Skupna raba virov“. Oglejmo si primer, ko CORS ni omogočen in zahteva Ajax ne uspe. Eden od standardnih in enostavnih načinov, da to popravimo, če predpostavimo, da je strežnik Apache, je nastavitev glave, ki posebej omogoča CORS skozi datoteko .htaccess:
Header set Access-Control-Allow-Origin "*"
V videu samo premaknemo zahtevo za Ajax v CodePen, ki privzeto dobro obvlada Ajax.
Enostavno sirasto:
Glejte Pen fBInl Chrisa Coyierja (@chriscoyier) na CodePen