Az Ajax elég magasan van ott a jQuery használatának legnagyobb okai miatt. A jQuery nem csak a böngészőkön keresztüli problémákat oldja meg, hanem a szintaxist is nagyon könnyen használható és érthetővé teszi.
Ebben a videóban egy szúrással elmagyarázzuk, mi is az Ajax egyáltalán. Megvizsgálunk egy űrlap elemet, amely beküldéskor GET vagy POST kérést hajt végre (a method attribútum által meghatározott módon) az Ön által megadott URL-re (amelyet a action attribútum határoz meg). Ez csak HTML, egyáltalán nem történik háttérprogram vagy JavaScript. De ez a beküldés az oldal változását fogja okozni, szó szerint töltse be újra az új URL-t, akárcsak egy linkre kattintva.
Az Ajax lehetővé teszi számunkra, hogy azt a GET vagy POST kérést a háttérben tegyük meg, az oldal újratöltése nélkül. Lényegében ez az Ajax teljes lényege. És nagyon erős. Nagyrészt felelős azért, hogy a modern weboldalak miért működnek és érzik magukat.
Az Ajax régebben az aszinkron JavaScript és az XML mellett állt, de ezt manapság nagyjából figyelmen kívül hagyják, mert ez nem sokat jelent. Ezért a nagybetűs írás törlése is. Előfordulhat, hogy néha megjelenik az „XHR”, amely az XMLHttpRequest rövidítése, amely az Ajax natív alaptechnológiája.
A különbség a GET és a POST között lényegében a következő: A GET az információk megszerzésére szolgál, és nem felelős az adatok megváltoztatásáért, a POST pedig kifejezetten az adatok megváltoztatásáért. Olvasson erről többet erről a StackOverflow szálról.
Elképesztően egyszerű GET-kérelmet benyújtani a jQuery-ben:
$.get( "URL", function(data) ( // do something with data )); ));
Az URL az a hely, ahonnan az adatokat reméli. A második paraméter a visszahívási funkció, amely akkor fut, amikor az Ajax kérés sikeres volt. A legfontosabb paraméter az első, az adat, amely tartalmazza a kérésből kapott információkat.
Az Ajax kérések néha meghiúsulhatnak. A hiba egyik oka maga a böngésző és annak biztonsági házirendje lehet. Maguk a böngészőkbe sütik a szabályokat arra vonatkozóan, hogy honnan lehet tartalmat kérni. A kéréseket mindig ugyanarra a domainre lehet benyújtani, ahonnan a kérés érkezik. De ha más domainről van szó, akkor ennek a különféle tartománynak külön meg kell engednie.
Mindent elolvashat az enable-cors.org oldalon. A CORS a „Cross-Origin Resource Sharing” mellett áll. Megtekintünk egy példát, ahol a CORS nincs engedélyezve, és az Ajax kérés sikertelen. Ennek egyik standard és egyszerű megoldása - feltételezve, hogy a kiszolgáló Apache - egy fejléc beállítása, amely kifejezetten engedélyezi a CORS-t a .htaccess fájlon keresztül:
Header set Access-Control-Allow-Origin "*"
A videóban csak áthelyezzük az Ajax kérelmet a CodePen-be, amely alapértelmezés szerint jól kezeli az Ajaxot.
Könnyű sajtos:
Lásd Chris Coyier (@chriscoyier) Pen fBInl-jét a CodePen-en