Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zwraca undefined.
paxton
post
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 1
Dołączył: 22.06.2009
Skąd: Londyn, UK

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


Witam, posiadam o to taka funkcje:

  1. function onMove(to) {
  2. $.ajax({
  3. type: "POST", url: "walkable.php", data: "move=" + to,
  4. complete: function(data){
  5. var data = data.responseText;
  6. return data;
  7.  
  8.  
  9. }
  10. });
  11.  
  12. }


Plik walkable.php zawsze coś zwraca wiec nie ma z tym problemu, w tym problem ze sama funkcja zwraca undefined.

Sprawdzam to poprzez alert(onMove("left"));

Co tu może być źle? Przeszukałem cale google, lecz nic nie znalazłem.

Ten post edytował paxton 24.06.2009, 23:24:10
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Tzn, że nie dostaniesz wyniku działania funkcji complete jeżeli walniesz w niej return.
Zeby to obejsc musisz wywoływac ajaxa w sposób synchroniczny (zapraszam do manuala jquery) i wtedy bedziesz mogl odebrac dane. Poniewaz sposób synchroniczny blokuje przegladarke na czas ładowania, wiec nie warto z nie korzystac dlatego po prostu zamiast zwracac wartość wywołuj inną funkcje, która ma robić coś po odebraniu danych ajax i w jej parametrze przekaz odebrane dane.
  1. funkcja(data);


Ten post edytował wookieb 25.06.2009, 07:07:08
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: 9.10.2025 - 22:24