Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 253 Pomógł: 1 Dołączył: 26.08.2009 Skąd: Szczecin Ostrzeżenie: (10%)
|
Napisałem skrypt, który zarządza akcjami dziejącymi się pod wpływem zmian w polach select. Mam trzy takie pola i opcje każdego wynikają bezpośrednio z wcześniej podjętych akcji. Wszystko działa w powiedzmy 80% tak jak sobie tego życzę, dlatego mam do was prośbę, żebyście w miarę możliwości podpowiedzieli mi co robię źle, jak to zmienić, bo przyznaję, że w JS i AJAXIE siedzę od niedawna (ok. dwóch dni).
Najpierw podam kody, a potem podam moje uwagi, zastrzeżenia, co mi się w działaniu nie podoba i za czym mam dość spore problemy. test_skrypt.js (tam są funkcje JS): Kod function ls_1(nr) { if(window.XMLHttpRequest){ xmlhttp = new XMLHttpRequest(); } else{ xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if(xmlhttp.readyState==4 && xmlhttp.status==200){ document.getElementById("selector_c").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","../dynamic.php?ls="+nr,true); xmlhttp.send(); } function ls_2(nr) { if(window.XMLHttpRequest){ xmlhttp = new XMLHttpRequest(); } else{ xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if(xmlhttp.readyState==4 && xmlhttp.status==200){ document.getElementById("selector_l").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","../dynamic.php?ls2="+nr,true); xmlhttp.send(); } dynamic.php (tutaj wykonuję wszelkie polecenia które mają coś zmienić):
fragment kodu gdzie mam pola select:
A teraz moje spostrzeżenia, uwagi, czy też pytania: 1. Czy da się jakoś te dwie funkcje JS (ls_1 i ls_2) zamknąć w jedną, bo przyznaję, że coś kombinowałem z ifami ale jakoś nie wyszło. 2. Gdy już działa wszystko to w momencie, kiedy wybieram opcję w pierwszym select to wtedy w drugim mam normalnie trzy opcje plus pole t2 (czyli to po else w dynamic.php dot. drugiego selecta) Dlatego właśnie dodałem te t1 i t2, żeby łatwiej było zlokalizować błąd, ale to jakoś nic mi szczególnie nie dało i może wy coś widzicie co pominąłem, bo w gruncie rzeczy nie chciał bym, żeby to tak było (mają być tylko trzy pola i tyle). 3. To już ostatnia rzecz, która przyznaję dosyć mocno mnie zaskoczyła, a mianowicie gdy juz mam wybraną opcję w select 1 i 2 to wtedy w select 3 pojawia mi się t1 (czyli to z pierwszego selecta w dynamic.php) a ten select w ogóle ma nie korespondować z select 3. Co to może być? Domyślam się, że dużo napisałem i dla wielu z was jest to zapewne bardzo proste, ale jak już mówiłem dopiero zaczynam JS i AJAXA tak więc liczę na wsparcie i zrozumienie. |
|
|
|
sebap123 Kilka pytań do skryptów tworzących dynamiczne formularze 15.12.2010, 23:08:22
Scalak Cytat2. Gdy już działa wszystko to w momencie, kie... 16.12.2010, 00:24:17
sebap123 Dzięki wielkie. Własnie o coś takiego mi chodziło. 17.12.2010, 00:12:03 ![]() ![]() |
|
Aktualny czas: 24.12.2025 - 12:09 |