![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 18.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Przeglądałem forum, jednak nie znalazłem odpowiedzi na moje pytanie. Mianowicie, mam pole input, gdzie po zmianie jego wartości wykonywana jest funkcja JS. Funkcja w JS ma za pomocą AJAXA sprawdzić wartość generowaną przez PHP. Kod java script:
Problem jest w tym, że wartość zwracana przez AJAX nie jest zapisywan do zmiennej JS. Z tego co wyczytałem to dlatego, że AJAX jest wykonywany asynchronicznie z JavąScript. Stosując opóźnienie można to obejść - tylko, że nie bardzo coś takiego mi wychodzi. Paradoksalnie pokazanie alertu w JS z dowolną treścią sprawia, że zmienna error ma odpowiednią wartość, ale jest to rozwiązanie prowizoryczne. Zastosowanie pętli:
... teoretycznie działa, ale powoduje zawieszanie się przeglądarki i komunikaty o możliwości zakończenia skryptu. Wiecie jak zrobić, aby wartość zwracana przez AJAX była zapisywana do zmiennej JAVASCRIPT? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 ![]() |
Możesz zrobić to tak:
Kod onFinalization: function(obj) { error = obj.responseText; if(error == 'cos tam') { // zrob cos } else { // zrob cos innego } } lub tak: Kod onFinalization: function(obj) {
error = obj.responseText; handleError(error); } function handleError(error) { // zrob cos lub cos innego w zlaeznosci od error } -------------------- I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 603 Pomógł: 131 Dołączył: 24.07.2007 Skąd: Górny Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Dlaczego nie przypisujesz obj.resp.... w sekcji onSuccess? Z tego co się orientuję to tam to powinno mieć miejsce. onFinalization służy do innych celów.
-------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 18.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki batman. Tak własnie to zrobiłem
![]() onsuccess jest wywoływane gdy polecenie ajax wykona się poprawnie onfinalizaction zawsze gdy zostenie ono wykonane, bez znaczenia czy poprawnie czy nie. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 20:39 |