Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQ]/[JS] Zapis tablic do pamięci, Ajax, przed, zamiast po wykonaniu skryptu.
Rewil
post
Post #1





Grupa: Zarejestrowani
Postów: 175
Pomógł: 0
Dołączył: 19.09.2009

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


Pobieram sobie baze XML'em, całą, ładuję ją do tablic, no właśnie, nie rozumiem czemu po za funkcją bazaXML mi nie robi ich globalnych. Zmienne przyrównane do tablic są poprawne, to znaczy są pobierane.
  1. $.ajax({
  2. type: "GET",
  3. url: "baza.xml",
  4. dataType: "xml",
  5. success: bazaXML
  6. });
  7.  
  8. pozycja = new Array();
  9. czas = new Array();
  10. naglowek = new Array();
  11. nazwa_link = new Array();
  12. link = new Array();
  13. grafika_link = new Array();
  14.  
  15. function bazaXML(xml) {
  16. id_xml = 1;
  17. $(xml).find("miniaturka").each(function () {
  18. pozycja[id_xml] = $(this).find("pozycja").text();
  19. czas[id_xml] = $(this).find("czas").text();
  20. naglowek[id_xml] = $(this).find("naglowek").text();
  21. nazwa_link[id_xml] = $(this).find("nazwa_link").text();
  22. link[id_xml] = $(this).find("link").text();
  23. grafika_link[id_xml] = $(this).find("grafika_link").text();
  24. //alert(naglowek[id_xml]);
  25. id_xml++;
  26. });
  27.  
  28. //alert(naglowek[1]); tu działa
  29. }
  30.  
  31. alert(naglowek[1]); // tu już nie
  32.  


Wygląda to tak jakby ajax, musiał się wykonać na końcu. Najpierw wyświetla się "tu już nie", dopiero później "tu działa"

@EDIT potwierdzone przypuszczenie, wrzuciłem alerta do interwała i pierwszy jest pusty, następne już nie. Jak zainicjować ajaxa żeby wykonał się jako pierwszy?

Ten post edytował Rewil 24.10.2011, 23:23:14
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Rewil
post
Post #2





Grupa: Zarejestrowani
Postów: 175
Pomógł: 0
Dołączył: 19.09.2009

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


Tak jak mówisz ajax dłużej się wykonuje niż parsowanie js:

Moja odpowiedź na to, to:
  1. $(document).ajaxComplete(function() { });

Pozdrawiam (IMG:style_emoticons/default/smile.gif)
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: 27.09.2025 - 08:14