Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [AJAX][JavaScript] Wykonanie funkcji pobranej za pomocą ajax
patryk9200
post 17.08.2010, 19:02:47
Post #1





Grupa: Zarejestrowani
Postów: 319
Pomógł: 4
Dołączył: 7.02.2009
Skąd: pless

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


Witam,

Mam taki problem, pobieram do div'a zawartość za pomocą ajaxa, problem w tym, że w żaden sposób nie udało mi się wykonać funkcji do której się odwołuję
po pobraniu zawartości.
zaraz po załadowaniu diva muszę wykonać taką funkcję:
  1. <script type="text/javascript">showPictures('/143/','show');</script>


czy jest to w ogóle wykonalne?
myślałem też żeby zrobić to na takiej zasadzie, że jakaś funkcja przeszukuje co 1s kod strony w poszukiwaniu czy nie została wywołana ta funkcja.
Dodam, że na js za bardzo się nie znam więc wskazówki z opisem mile widziane
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
nospor
post 17.08.2010, 19:05:15
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ajax ma takie zdarze jak COMPLETE. Wystarczy ze do niego wstawisz wywolanie swojej funkcji i po sprawie.

Do ajaxa skorzystaj z jakiegoś liba, np. jQuery


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
patryk9200
post 17.08.2010, 19:52:32
Post #3





Grupa: Zarejestrowani
Postów: 319
Pomógł: 4
Dołączył: 7.02.2009
Skąd: pless

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


a jak to zdarzenie zastosować w tym wypadku? niewiele jest na jego temat, a nie chcę stosować bibliotek typu jQuery czy prototype ponieważ potrzebuję to tylko do jednego elementu który jest w panelu administracyjnym i pozwala na modyfikowanie/dodawanie/usuwanie/zmiana kolejności zdjęć bez potrzeby odświeżania strony.
Cały ten mój "skrypt" wygląda tak:
  1. <script type="text/javascript">
  2. var xmlhttp;
  3. function showPictures(str,str2,str3)
  4. {xmlhttp=GetXmlHttpObjectt();
  5. var url="'.URL.'upload_pictures.php";
  6. url=url+"?S-20_dir="+str+"&action="+str2+"&U_offerId="+str3+"";
  7. xmlhttp.onreadystatechange=stateListChangedd;
  8. xmlhttp.open("GET",url,true);
  9. xmlhttp.send(null);}
  10. function stateListChangedd()
  11. {if (xmlhttp.readyState==4)
  12. {document.getElementById("div_pictures").innerHTML=xmlhttp.responseText;
  13. document.getElementById("div_pictures").style.display = "";}}
  14. function GetXmlHttpObjectt()
  15. {if (window.XMLHttpRequest)
  16. {return new XMLHttpRequest();}
  17. if (window.ActiveXObject)
  18. {return new ActiveXObject("Microsoft.XMLHTTP");}
  19. return null;}

następnie po wywołaniu funkcji jest wczytywana zawartość zwróconych danych do diva
a nie chcę drzwi armatą wyważać...

Ten post edytował patryk9200 17.08.2010, 19:54:21
Go to the top of the page
+Quote Post
nospor
post 17.08.2010, 19:57:59
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
a nie chcę drzwi armatą wyważać...
bez przesady... im szybciej się zapoznasz z porządnym libem tym lepiej dla Ciebie.

Kod
function stateListChangedd()
{if (xmlhttp.readyState==4)
{
alert('ZAMIAST TEGO ALERT WYWOLAJ SOBIE FUNKCJE JAKĄ CHCESZ');
document.getElementById("div_pictures").innerHTML=xmlhttp.responseText;
document.getElementById("div_pictures").style.display = "";}}


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
patryk9200
post 17.08.2010, 20:48:17
Post #5





Grupa: Zarejestrowani
Postów: 319
Pomógł: 4
Dołączył: 7.02.2009
Skąd: pless

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


Cytat(nospor @ 17.08.2010, 20:57:59 ) *
bez przesady... im szybciej się zapoznasz z porządnym libem tym lepiej dla Ciebie.

Kod
function stateListChangedd()
{if (xmlhttp.readyState==4)
{
alert('ZAMIAST TEGO ALERT WYWOLAJ SOBIE FUNKCJE JAKĄ CHCESZ');
document.getElementById("div_pictures").innerHTML=xmlhttp.responseText;
document.getElementById("div_pictures").style.display = "";}}


nie działa, tzn. znika cały div, co wydaje się dziwne...
Go to the top of the page
+Quote Post
nospor
post 17.08.2010, 21:03:53
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




moj blad:
Cytat
function stateListChangedd()
{if (xmlhttp.readyState==4)
{
document.getElementById("div_pictures").innerHTML=xmlhttp.responseText;
document.getElementById("div_pictures").style.display = "";
alert('ZAMIAST TEGO ALERT WYWOLAJ SOBIE FUNKCJE JAKĄ CHCESZ');
}}


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
patryk9200
post 17.08.2010, 23:26:58
Post #7





Grupa: Zarejestrowani
Postów: 319
Pomógł: 4
Dołączył: 7.02.2009
Skąd: pless

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


dzięki działa, mam jeszcze jeden problem, mam w JavaScript 2 podobne funkcje, zauważyłem, gdy wywołam 1 z nich to zmienia też zawartość elementu funkcji
drugiej która się do niego odnosi, próbowałem to jakoś rozwiązać ale konflikt dalej jest
kod:
  1. <script type="text/javascript">
  2. var xmlhttp;
  3. function showList(str,str2)
  4. {xmlhttp=GetXmlHttpObject();
  5. var url="http://alpha.autos24.pl/show_models.php";
  6. url=url+"?N-4_marka="+str+"&selectID="+str2;
  7. xmlhttp.onreadystatechange=stateListChanged;
  8. xmlhttp.open("GET",url,true);
  9. xmlhttp.send(null);}
  10. function stateListChanged()
  11. {if (xmlhttp.readyState==4)
  12. {document.getElementById("select").innerHTML=xmlhttp.responseText;
  13. document.getElementById("hidden_select").style.display = "none";
  14. document.getElementById("select").style.display = "";}}
  15. function GetXmlHttpObject()
  16. {if (window.XMLHttpRequest)
  17. {return new XMLHttpRequest();}
  18. if (window.ActiveXObject)
  19. {return new ActiveXObject("Microsoft.XMLHTTP");}
  20. return null;}
  21.  
  22. <script type="text/javascript">
  23. var xmlhttp;
  24. function showPictures(str3,str4,str5)
  25. {xmlhttp=GetXmlHttpObjectt();
  26. var url2="http://alpha.autos24.pl/upload_pictures.php";
  27. url2=url2+"?S-20_dir="+str3+"&action="+str4+"&U_offerId="+str5+"";
  28. xmlhttp.onreadystatechange=stateListChangedd;
  29. xmlhttp.open("GET",url2,true);
  30. xmlhttp.send(null);
  31. }
  32. function stateListChangedd()
  33. {if (xmlhttp.readyState==4)
  34. {document.getElementById("div_pictures").innerHTML=xmlhttp.responseText;
  35. document.getElementById("div_pictures").style.display = "";}}
  36. function GetXmlHttpObjectt()
  37. {if (window.XMLHttpRequest)
  38. {return new XMLHttpRequest();}
  39. if (window.ActiveXObject)
  40. {return new ActiveXObject("Microsoft.XMLHTTP");}
  41. return null;}

odwołuję się do nich kolejno tak:
  1. <script type="text/javascript">
  2. showList(4, 8);

  1. <script type="text/javascript">showPictures('54ygh6yu','show',0);</script>


Ten post edytował patryk9200 17.08.2010, 23:27:50
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:37