• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zapytanie AJAX

VPS Starter Arubacloud
+2 głosów
105 wizyt
pytanie zadane 1 września 2022 w JavaScript przez Doge Gaduła (3,420 p.)

Witam, czy to normalne, że jeżeli za pomocą AJAXa wyślę zapytanie

let xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function(){
        if(this.status == 200)
        {
            console.log(this.responseText);
        }
    }
    xhr.open('GET', `field.php?f=${field}`, true);
    xhr.send();

to w konsoli dostanę najpierw 2 razy pustą wiadomość, a później dopiero prawidłową?

EDIT: zmieniłem przychodzący responseText i teraz dostaję 1 wiadomość pustą i 2 prawidłowe, ale nadal coś jest chyba nie tak, bo dostaję 3 wiadomości zamiast 1

2
komentarz 1 września 2022 przez VBService Ekspert (255,320 p.)
edycja 1 września 2022 przez ScriptyChris

To może być "dobra pora", żeby zacząć korzystać z fetch-a. smiley

1 odpowiedź

+2 głosów
odpowiedź 1 września 2022 przez ScriptyChris Mędrzec (190,190 p.)
wybrane 2 września 2022 przez Doge
 
Najlepsza

To że widzisz odpowiedź trzy razy może wynikać z tego, że nie dodałeś warunku, który sprawdza czy stan XHR-ki jest już zakończony i Twój console.log wykonuje się dla ostatnich trzech stanów:

  • HEADERS_RECEIVED
  • LOADING
  • DONE

Dodanie warunku (wg przykładu z dokumentacji)

if (this.readyState === XMLHttpRequest.DONE) {
  // reszta kodu
}

powinno pomóc.

Podobne pytania

0 głosów
2 odpowiedzi 851 wizyt
pytanie zadane 12 marca 2018 w PHP przez damian9901 Bywalec (2,140 p.)
0 głosów
0 odpowiedzi 142 wizyt
pytanie zadane 3 listopada 2017 w PHP przez Sinoviesta Nowicjusz (230 p.)
0 głosów
0 odpowiedzi 71 wizyt
pytanie zadane 19 maja 2020 w JavaScript przez endriuu0 Nowicjusz (140 p.)

92,782 zapytań

141,708 odpowiedzi

320,588 komentarzy

62,114 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...