Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem ze zwracaną wartością przez funkcję ajaxa
Matiash
post
Post #1





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 7.04.2007

Ostrzeżenie: (0%)
-----


Witam, mam taka funkcję js. Wszystko działa dobrze, jednak chciałbym jeśli odpowiedź zwórcona przez serwer (this.respone) != failed, to żeby cała funkcja MoveR zwracała true a w przeciwnym wypadku false. Przy takim kodzie jak poniżej zwraca undefined.

Kod
  function MoveR(name, name_min, name2, name2_min) {      
          var xmlhttp = new ajax("ajax/moveright/");
          xmlhttp.method = "GET";
          xmlhttp.onCompletion = function(){
            if (this.response != \'failed\') {
                return true;
            } else { return false; }
          };          
          xmlhttp.runAJAX("photoname=" + escape(name) + "&photoname_min=" + escape(name_min) + "&photoname2=" + escape(name2) + "&photoname2_min=" + escape(name2_min));
  }


Ten post edytował Matiash 17.10.2010, 23:49:52
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
flashdev
post
Post #2





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Funkcja MoveR zakończy swoje działanie zanim jeszcze wynik odpowiedzi będzie znany. Dzieje się tak dlatego, że ajax działą asynchronicznie. Nie możesz uzależnić wyniku zwracanego przez tą funkcję od wyniku odpowiedzi serwera. Możesz za to przekazać tej funkcji uchwyt do funkcji którą ona ma wykonać gdy odpowiedź będzie znana.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 06:33