Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dynamiczny formularz
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
merle
witam wszystkich serdecznie
mam dość rozległy problem
potrzebuje zrobić dynamiczny formularz w którym występowała by nazwijmy to "grupa" zawierająca kilka elementów input i select charakteryzujących tą grupę w niej była by tez podgrupa również posiadająca kilka elementów do wypełniania input i select .
Istniał by przycisk do tworzenia nowych grup wraz z podgrupami zagnieżdżonymi w nich jak i przycisk do tworzenie podgrup wewnątrz danych grup.
uhh... mam nadzieje ze nie za bardzo zagmatwałem sprawę? worriedsmiley.gif
znalazłem coś takiego z wykorzystaniem DOM :


  1. <script type="text/javascript">
  2. <!-- <![CDATA[
  3. i=0;
  4. function wstaw() {
  5. i++;
  6. var tekst = document.createTextNode('pole '+i+': ');
  7. var input = document.createElement('input');
  8. input.setAttribute('type', 'text');
  9. input.setAttribute('name', 'p'+i);
  10. var br = document.createElement('br');
  11. var div = document.createElement('div');
  12. div.appendChild(tekst);
  13. div.appendChild(input);
  14. div.appendChild(br);
  15. document.getElementById('pola').appendChild(div);
  16. }
  17. // ]]> -->
  18.  
  19.  
  20. <form action="index.php" method="post">
  21. <p><input type="button" value="wstaw nowe pole" onclick="wstaw()" /></p>
  22.  
  23. <div id="pola">
  24. </div>
  25.  
  26. <p><input type="submit" value="wyślij pola" /></p>
  27. </form>



w powyższym tworzy sie dodawalny input , moje pytanie :
jak z tego zrobić selecta bo potrzebuje i inputów i selectów,a niespecjalnie sie znam na strukturze DOM,
wiem ,że pewnie to trywialne jest, ale juz mnie biała gorączka bierze tongue.gif

z zagnieżdżeniem tego tak ja napisałem na początku powinienem sobie poradzić , jakkolwiek za jakieś wskazówki byłbym wdzięczny
na koniec jeszcze jedno pytanie :
jak z zapisywaniem czegoś takiego do pliku txt przez php?
jak to najlepiej rozwiazać przy takim dynamicznym formluarzu

pozdrawiam
nospor
Cytat
jak z tego zrobić selecta bo potrzebuje i inputów i selectów

lekcja logiki i samowystarczania:
skoro masz w kodzie:
Kod
document.createElement('input');

no to mozna sie domyslic, ze ma byc:
Kod
document.createElement('select');

No a google to napewno ci powie:
http://www.google.com/search?hs=0XM&hl=pl&...btnG=Szukaj&lr=
smile.gif
merle
eehhhh.... idiotą nie jestem tongue.gif
to banalne, tak tez już zrobiłem

ehh.. może pytanie źle sformułowałem, no cóż....
jak zrobić funkcjonalnego selecta tak żeby zawierał opcje do wyboru w sobie

kombinowałem ale zawsze select jest pusty i nie ma nic do wyboru w nim sad.gif
rzadko sie pytam o cokolwiek na forach czy gdziekolwiek zawsze najpierw szukam, ale tego nie jestem w stanie znaleźć (choć podejrzewam ze to banalne musi być) wiec w końcu postanowiłem sie zapytać
nospor
Cytat
eehhhh.... idiotą nie jestem
no coż, tego nie wiem i nie sugeruje ale czytac to napewno nie umiesz. podalem ci przeciez linka. Pierwszy rezultat:
http://www.quirksmode.org/js/options.html
spojrz na sam dol strony

kolejny rezultat:
http://www.donkeymagic.co.uk/index.php?story=67&page=news
tu juz masz tworzenie selecta od podstaw z opcjami

aczkolwiek dobry kod z pierwszego linku:
Kod
var opt = doc.createElement('OPTION');
opt.value = value;
opt.text = text;
select.options.add(opt, index);


Cytat
rzadko sie pytam o cokolwiek na forach czy gdziekolwiek zawsze najpierw szukam, ale tego nie jestem w stanie znaleźć (choć podejrzewam ze to banalne musi być) wiec w końcu postanowiłem sie zapytać
No i dobrze, ale na przyszlosc zagladaj w linki co dostajesz w ramach odpowiedzi smile.gif
merle
zwracam honor;)
zerknąłem na linka, ale po tym jak posta napisałem , tego drugiego
zmęczony jestem pomimo wczesnej pory no i myślenie już nie te
ehh.. a może rzeczywiście zidiociałem ...
przepraszam i prosze o wyrozumialość

a jeśli tak jeszcze mógłbym się zapytać jak to wykorzystać w moim przypadku?
tzn byłbym wdzięczny, jakbyś mi wyłożył całościowo konstrukcje selecta w tym moim wypadku o ile to nie problem wielki

próbowałem skonstruować tego selecta, ale nadal mi nie wychodzi
ehh.. przecież zrobienie selecta normalnie jest banalne , tzn tutaj pewnie tez ale nie potrafie pojąc konstrukcji jak narazie
mad.gif
nospor
No to masz juz dzialający przyklad. Se go podepnij juz tylko do siebie:
  1. <script language="javascript">
  2. function AddSelect(){
  3. diw = document.getElementById('diw');
  4.  
  5. var select = document.createElement('select');
  6. opt = document.createElement('option');
  7. opt.value = 1;
  8. opt.text = 'pierwszy';
  9. select.options.add(opt, 0);
  10. opt = document.createElement('option');
  11. opt.value = 2;
  12. opt.text = 'drugi';
  13. select.options.add(opt, 1);
  14. diw.appendChild(select);
  15. }
  16. </script>
  17. </head>
  18. <input type="button" onclick="AddSelect();" />
  19. <div id="diw"></div>
  20. </body>
  21. </html>


edit: no oczywiscie pod badzIEwiem nie dziala. Pewnie jakis glupi blad, niechce juz mi sie szukac.
pod Operą i FF jest ok
merle
wielkie dzieki smile.gif
postram sie dojsc dla czego w IE nie dziala
Cysiaczek
słówko var przy zmiennych - var war=document.getElementById....
nospor
@Cysiaczek hehe, faktycznie. ale to badzIEwie winksmiley.jpg
no nic, to juz teraz wiem czemu należy zawsze pisac var smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.