Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jquery] zatrzymuje sie na beforeSend
dtpteam
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 29.06.2006

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


Witam, mam funkcje napisana w jquery.


function GetMiniProd(id_prod){
var lis_marca = $('#lis_marca').attr("value");
var lis_modelo = $('#lis_modelo').attr("value");
var page = $.ajax({url: "productos.php",
type: "GET",
async:true,
data: "ajax=true&orden=page_nav4&full_prod="+id_prod+"",
beforeSend: function(html){
$("#"+id_prod).html("<img src='preloader.gif' alt='preloader' /><br />Ladowanie danych, prosze czekac...")
},
success: function(html){
$("#"+id_prod).html(html);

}

});
}

wszystko dziala super jezeli mam dobre polaczenie ze strona, w sytuacji kiedy strona laduje sie wolno bardzo czesto funkcja wykonuje sie az do momentu pokazania sie "Ladowanie danych, prosze czekac..." i tutaj sie zatrzymuje.
Go to the top of the page
+Quote Post
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A nie możesz po prostu tego preloadera pokazać przed wywołaniem $.ajax?
Go to the top of the page
+Quote Post
dtpteam
post
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 29.06.2006

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


Cytat(erix @ 13.01.2010, 22:09:38 ) *
A nie możesz po prostu tego preloadera pokazać przed wywołaniem $.ajax?


Dziekuje za odpowiedz ale problemem nie jest preloader, funkcja staje w tym miejscu poniewaz nie wykonuje sie success: . Normalne przegladarka jezeli klikniemy np. link a server laduje wolno bedzie czekac az otrzyma odpowiedz i zaladuje strone. W przypadku mojej funkcji jezeli nie otrzyma odpowiedzi od razu to przestaje dzialac, nie czeka.

Ten post edytował dtpteam 14.01.2010, 10:19:02
Go to the top of the page
+Quote Post
Crozin
post
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Nie chce mi się sprawdzać, ale beforeSend powinno zwracać chyba TRUE jeżeli chcesz by całe żądanie zostało wykonane.
Go to the top of the page
+Quote Post
dtpteam
post
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 29.06.2006

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


Dziekuje wszystkim za pomoc. Udalo mi sie w koncu rozwiacac problem i teraz dziala wszystko na 100%, wystarczylo dolaczyc do funkcji ten kod:

timeout: 5000,
error: function(request,error) {
if (error == "timeout") {
GetMiniProd(id_prod);
} else {
$("#response1").append("ERROR: " + error);
}
},
Go to the top of the page
+Quote Post

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: 4.10.2025 - 10:27