AJAX - Objekti XMLHttpRequest
Vadnica logo
vadnica logo
x
HTML CSS JavaScript jQuery SQL PHP Laravel
HTML CSS JavaScript Orodje za delo Kako delati z JavaScript? Izjave Sintaksa Spremenljivke Vrste podatkov Logične vrednosti Dogodki Datum in Čas Nizi Števila Regularni izrazi Matrika (Array) Funkcije Objekti Razredi DOM AJAX XMLHttpRequest Pošiljanje zahteve strežniku Odziv strežnika Knjižnica jQuery MySQL PHP Laravel

AJAX - Objekti XMLHttpRequest

Temelj AJAX-a je objekt XMLHttpRequest.

  1. Ustvarimo objekt XMLHttpRequest.
  2. Definiramo funkcijo povratnega klica.
  3. Odpremo objekt XMLHttpRequest.
  4. Pošljemo zahtevo strežniku.
Kako AJAX deluje?
Kako AJAX deluje?

Vsi sodobni brskalniki podpirajo objekt XMLHttpRequest in se lahko uporablja za izmenjavo podatkov s spletnim strežnikom v zakulisju. Pomeni, da je mogoče posodobiti dele spletne strani, ne da bi ponovno naložili celotno stran. Sintaksa za ustvarjanje objekta XMLHttpRequest:

imeSpremenljivke = new XMLHttpRequest();
    

Funkcija povratnega klica je funkcija, ki se kot parameter posreduje drugi funkciji. V tem primeru mora funkcija povratnega klica vsebovati kodo, ki se izvede, ko je odgovor pripravljen.

imeSpremenljivke.onload = function () {
    // kaj želimo storiti, ko je odgovor pripravljen
}
    

Če želimo poslati zahtevo strežniku, lahko uporabimo metodi open() in send() objekta XMLHttpRequest.

imeSpremenljivke.open("GET", "imeDatoteke.txt");
imeSpremenljivke.send();
    
AJAX Primer Primer prikazuje, kako funkcija zahteva podatke od spletnega strežnika in jih tudi prikaže. Glej primer

Zaradi varnosti sodobni brskalniki ne omogočajo dostopa med domenami, kar pomeni, da morata spletna stran kot XML datoteka biti na istem strežniku. Če želimo primere uporabiti na svoji spletni strani, morajo biti XML datoteke naložene na našem strežniku (kjer se nahaja index datoteka).

Objektne metode XMLHttpRequest
Metoda Opis
new XMLHttpRequest() Ustvarimo nov objekt XMLHttpRequest.
abort() Prekličemo trenutno zahtevo.
getAllResponseHeaders() Vrne informacije o glavi.
getResponseHeader() Vrne določene informacije o glavi.
open(metoda, url, async, uporabnik, geslo) Določimo zahtevo: metoda (vrsta zahteve "GET" ali "POST"), url (lokacija datoteke), async (true (asinhrono) ali false (sinhrono)), uporabnik (uporabniško ime je neobvezno) in geslo (prav tako neobvezno)
send() Pošljemo zahtevo strežniku in se uporablja za zahteve "GET".
send(string) Pošljemo zahtevo strežniku in se uporablja za zahteve "POST".
setRequestHeader() Dodamo par vrednostnih oznak v glavo, ki jo želimo poslati.
Lastnosti objekta XMLHttpRequest
Lastnosti Opis
onload Definira funkcijo, ki jo je treba poklicati, ko je zahteva naložena.
onreadystatechange Določa funkcijo, ki jo je treba poklicati, ko se spremeni lastnost readyState.
readyState Ohrani status XMLHttpRequest zahteve:
  1. Zahteva ni inicializirana.
  2. Se vzpostavi povezava s strežnikom.
  3. Prejeta zahteva.
  4. Procesna obdelava.
  5. Zahteva popolna in odgovor pripravljen.
responseText Vrne odzivne podatke kot niz.
responseXML Vrne odzivne podatke kot datoteko XML.
status Številko statusa zahteve (this.readyState === 4 && this.status === 200).
  1. 200 v redu (ang. Okay).
  2. 403 prepovedano (ang. Prohibited).
  3. 404 ni najdeno (ang. Not found).
  4. 1xx informacije (ang. Information).
  5. 2xx uspešno (ang. Successful).
  6. 3xx preusmeritve (ang. Diversions).
  7. Vse 4. številke pomenijo napako na strani odjemalca.
  8. Vse 5. številke pomenijo napako na strani strežnika.
statusText Vrne besedilo stanja (kot je "V redu" ali "Ni najdeno").
AJAX Primer Primer prikazuje, kako funkcija zahteva podatke od spletnega strežnika in jih tudi prikaže. Glej primer

Lastnost onreadystatechange vsebuje status zahteve XMLHttpRequest in definira funkcijo povratnega klica, ki se izvede, ko se spremeni readyState stanje. Lastnost statusa in lastnosti statusText hranita status objekta XMLHttpRequest.

Lastnost Opis
onreadystatechange Definira funkcijo, ki se kliče, ko se spremeni readyState lastnost.
readyState Vsebuje status zahteve XMLHttpRequest.
  1. Zahteva ni inicializirana.
  2. Povezava s strežnikom je vzpostavljena.
  3. Zahteva prejeta.
  4. Obdelava zahteve.
  5. Zahteva končana in odgovor je pripravljen.
status
  1. 200 v redu (ang. Okay).
  2. 403 prepovedano (ang. Prohibited).
  3. 404 ni najdeno (ang. Not found).
  4. 1xx informacije (ang. Information).
  5. 2xx uspešno (ang. Successful).
  6. 3xx preusmeritve (ang. Diversions).
  7. Vse 4. številke pomenijo napako na strani odjemalca.
  8. Vse 5. številke pomenijo napako na strani strežnika.
statusText Vrne besedilo stanja (kot je "V redu" ali "Ni najdeno").

Funkcija onreadystatechange se pokliče vsakič, ko se stanje readyState spremeni.

onreadystatechange Ko je readyState 4 in status 200, je odgovor pripravljen. Glej primer

Hvala za obisk! Dodajam politiko zasebnosti.

© 2024 Vse pravice pridržane.

Donirajte preko PayPal ADMIN