Autor | Zpráva | ||
---|---|---|---|
Euroblb Profil |
#1 · Zasláno: 12. 12. 2008, 02:36:42 · Upravil/a: Euroblb
Ahoj lidi, tak jsem se tu zase po dlouhé době zjevil a potřeboval bych poradit asi s docela malou prkotinou.
Potřebuju změnit obsah webové stránky podle výběru s roletky <select></select> příklad vyberu v roletce pocet input(text)polí, a potřebuju vědět jak tyto pole zobrazit v závislosti na vybraném počtu, něco už jsem tak jakžtak vykutil ale pořád mi to nějak nefunguje. se mi to nemění tak, jak by mělo, teda vůbec né podle těch podmínek co jsem tam zadal.... předem děkuji za ochotu lidí kteří mi ochotně pomůžou tento problém vyřešit... |
||
Euroblb Profil |
#2 · Zasláno: 12. 12. 2008, 02:45:53
<body> <script language="javascript"> function nastav() { if (pocet_sloupcu.value == "s3") p1.style.display = ""; p2.style.display = ""; p3.style.display = ""; p4.style.display = "none"; p5.style.display = "none"; p6.style.display = "none"; p7.style.display = "none"; p8.style.display = "none"; p9.style.display = "none"; p10.style.display = "none"; if (pocet_sloupcu.value == "s4") p1.style.display = ""; p2.style.display = ""; p3.style.display = ""; p4.style.display = ""; p5.style.display = "none"; p6.style.display = "none"; p7.style.display = "none"; p8.style.display = "none"; p9.style.display = "none"; p10.style.display = "none"; if (pocet_sloupcu.value == "s5") p1.style.display = ""; p2.style.display = ""; p3.style.display = ""; p4.style.display = ""; p5.style.display = ""; p6.style.display = "none"; p7.style.display = "none"; p8.style.display = "none"; p9.style.display = "none"; p10.style.display = "none"; } </script> <select id="pocet_sloupcu" onchange="nastav();"> <option value="s2">2</option> <option value="s3">3</option> <option value="s4">4</option> <option value="s5">5</option> <option value="s6">6</option> <option value="s7">7</option> <option value="s8">8</option> <option value="s9">9</option> <option value="s10">10</option> </select> <div id="nazvy_sloupcu"> <input id="p1" type="text" name="sloupec1" value="zadejte název" maxlength="15" size="15" /> <input id="p2" type="text" name="sloupec2" value="zadejte název" maxlength="15" size="15" /> <input id="p3" type="text" name="sloupec3" style="display:none" value="zadejte název" maxlength="15" size="15" /> <input id="p4" type="text" name="sloupec4" style="display:none" value="zadejte název" maxlength="15" size="15" /> <input id="p5" type="text" name="sloupec5" style="display:none" value="zadejte název" maxlength="15" size="15" /> <input id="p6" type="text" name="sloupec6" style="display:none" value="zadejte název" maxlength="15" size="15" /> <input id="p7" type="text" name="sloupec7" style="display:none" value="zadejte název" maxlength="15" size="15" /> <input id="p8" type="text" name="sloupec8" style="display:none" value="zadejte název" maxlength="15" size="15" /> <input id="p9" type="text" name="sloupec9" style="display:none" value="zadejte název" maxlength="15" size="15" /> <input id="p10" type="text" name="sloupec10" style="display:none" value="zadejte název" maxlength="15" size="15" /> </div> </body> na ukázku.... snad to pomůže v tom pochopit co vlastně potřebuji |
||
Měsíček Profil |
#3 · Zasláno: 12. 12. 2008, 11:23:02
No .. trochu snahy by neuškodilo něco si přečti o metodě getElementById() a getElementsByTagName() .. k tomu by nebylo špatné si oprášit cykly (hlavně cyklus for(){}). Pak zkus sám něco ukutit, jestli se ti to ani tak nepodaří - tak ti to napíšu sám.
|
||
Euroblb Profil |
#4 · Zasláno: 12. 12. 2008, 17:20:07
Měsíček
heh moc rád bych byl kdybych mohl říci že vím co některá z těch metod znamená, o javu jen tak letem světem vždy někde zavadím, boužel zakopnu a rozbiju si čumák. javu trochu nechápu, je na mě až moc abstraktní. a navíc jsem si kdysi řekl že na web javu dávat nebudu, jen v malé míře a to jen a jen pro spříjemnění pobytu na webu, a né každý paskvil typu hodinu u kursoru atp., Tak bych byl rád za každou pomoc kterou můžeš poskytnou. Cykly znám s PHP ale na javu si netroufám, což se týká i if |
||
Měsíček Profil |
#5 · Zasláno: 12. 12. 2008, 17:29:23 · Upravil/a: Měsíček
Nahoru dej
var pocet_sloupcu = document.getElementById("pocet_sloupcu"); mimochodem Java != Javascript ;-) |
||
Euroblb Profil |
#6 · Zasláno: 12. 12. 2008, 18:51:32
Měsíček
kampak nahoru? vím že jsem idiot, že se ptám, ale nedáví mi to smysl...a navic to ani nefachčí. |
||
Měsíček Profil |
#7 · Zasláno: 13. 12. 2008, 19:13:37 · Upravil/a: Měsíček
Reaguji na Euroblba:
Promiň, že jsem na tebe skoro zapomněl :), ale mohl jsem si na to udělat čas až dnes, svým příspěvkem jsem myslel, že to děláš: 1.) Tak, že chudák JS neví co tím "p1" myslíš, takže musíš mu pomocí metody (viz výše) ukázat co tím máš vlastně na mysli. 2.) Děláš to zbytečně složitě. Zkus si například tohle (funkční): <style type="text/css"> input {display:none;} </style> <script type="text/javascript"> function show (pocet) { for (var i = 0; i < document.getElementsByTagName("input").length; ) { document.getElementById("p[" + (++i) + "]").style.display = (i <= pocet) ? "block" : "none"; } } </script> <form action="#"> <input value="Zadejte název" id="p[1]" maxlength="15" size="15"> <input value="Zadejte název" id="p[2]" maxlength="15" size="15"> <input value="Zadejte název" id="p[3]" maxlength="15" size="15"> <input value="Zadejte název" id="p[4]" maxlength="15" size="15"> <input value="Zadejte název" id="p[5]" maxlength="15" size="15"> </form> Zadej kolik chceš mít na stránce inputů : <select onChange="show(this.value);"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> |
||
Časová prodleva: 17 let
|
0