Autor | Zpráva | ||
---|---|---|---|
Ferda Profil * |
#1 · Zasláno: 25. 11. 2005, 13:50:09
Zdravim,
potrebuju pomoci javascriptu vytvaret formularova pole. Mam formular a u neho policko kam uzivatel napise cislo (coz bude mnozstvi udaju ktere chce napsat) a podle toho cisla potrebuju zaridit to aby se mi v ramci toho formulare vytvorili nove input prvky. Proste zadam treba cislo 8, a ve formulari se mi vyrobi osm novych input type=text. Nejak na to nemuzu prijit, pokousim se to delat pomoci "new", ale to mi nefunguje. Moc diiik za postrceni. Ferda |
||
Fred Profil |
#2 · Zasláno: 25. 11. 2005, 14:46:35
<script type="text/javascript">
function pridat(){ for(var i=0;i<document.getElementById('vstup').value;i++){ var novyB=document.createElement('input'); novyB.type='text'; novyB.name='vstup'+[i]; novyB.id='vstup'+[i]; document.getElementById('vystup').appendChild(novyB); } } </script> <input type="text" id="vstup"> <input type="button" value="Přidat" onclick="pridat(); return false;"> <div id="vystup"></div> |
||
Chamurappi Profil |
#3 · Zasláno: 25. 11. 2005, 15:53:31
Reaguji na Freda:
Proč nastavuješ i type? Proč id? Totéž stručněji: <script> function pridat() { for(var i = 0; i < document.getElementById('vstup').value; i++) document.getElementById('vystup').innerHTML += '<input name="vstup' + i + '">'; } </script> <input id="vstup"> <button onclick="return pridat()">Přidat</button> <div id="vystup"></div> Použití innerHTML je názornější. Kdyby chtěl Ferda přidat za <input> třeba ještě <br>, stačí triviální úprava. |
||
Ferda Profil * |
#4 · Zasláno: 25. 11. 2005, 15:54:10
Covece mooooooooooooooooooooooooooooc diiiiik, to je presne ono.
Ferda |
||
Ferda Profil * |
#5 · Zasláno: 25. 11. 2005, 15:56:42
Moc Vám oběma děkuju, teď už přesně vim jak na to a hlavně jak dál.
Ferda |
||
Fred Profil |
#6 · Zasláno: 25. 11. 2005, 16:33:32
Chamurappi
Já vím, jen abych předešel případnému dalšímu dotazu jak to dál zpracovávat. Ferda Radši by jsi to měl měnit ze selectu na onchange, aby jsi zamezil vkládání blbostí ze strany uživatele. Tedy pokud potřebuješ nějaké max rozumné množství těch tvořených inputů. |
||
Časová prodleva: 3 dny
|
|||
Ferda Profil * |
#7 · Zasláno: 28. 11. 2005, 11:42:04
Jasne, bude jich 20 maximalne. Select uz jsem tam udelal, je to s nim pro uzivatele pohodlnejsi.
diiik Ferda |
||
Časová prodleva: 20 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0