Autor | Zpráva | ||
---|---|---|---|
ondra15 Profil |
#1 · Zasláno: 14. 11. 2013, 20:59:02
Dobrý den, chci udělat zakazování jednotlivých
input ů podle vybrané možnosti v select u. Při výběru nažehlovačka chci, aby byl zakázán pouze input s id="typ22". Při nevybráno chci zakázat všechny inputy. Nyní se při nažehlovačka neděje nic.
Mám JS: <script type"text/javascript"> function Typ2() { var c=document.getElementById("typ2").value; if (c=="nažehlovačka") { document.getElementById("typ22").disabled=true; } else { document.getElementById("typ22").disabled=false; } if (c=="nevybráno") { document.getElementById("typ21").disabled=true; document.getElementById("typ22").disabled=true; document.getElementById("typ23").disabled=true; } else { document.getElementById("typ21").disabled=false; document.getElementById("typ22").disabled=false; document.getElementById("typ23").disabled=false; } } </script> <tr> <td class="popis">Typ produktu</td><td class="popis">Označení produktu *</td><td class="popis" title="Barva zadní strany je povinná pouze u FOTOPOLŠTÁŘKŮ">Barva pozadí *</td><td class="popiss">Počet kusů</td> </tr> <tr> <td><select name="e[5]" id="typ2" onChange="return Typ2();"> <option value="nevybráno">-vyberte-</option> <option value="fotopolštářek">fotopolštářek</option> <option value="nažehlovačka">nažehlovačka</option> </select> </td> <td><input type="text" id="typ21" class="required" minlength="2" size="12" name="e[6]"style="text-align: center;"></td> <td><input type="text" id="typ22" minlength="1" size="12" name="e[7]"style="text-align: center;"></td> <td> <select name="e[8]" id="typ23"> <option VALUE="nevybráno"></option> <option VALUE="1ks">1 ks</option> <option VALUE="2ks">2 ks</option> <option VALUE="3ks">3 ks</option> <option VALUE="4ks">4 ks</option> <option VALUE="5ks">5 ks</option> <option VALUE="6ks">6 ks</option> <option VALUE="7ks">7 ks</option> <option VALUE="8ks">8 ks</option> <option VALUE="9ks">9 ks</option> <option VALUE="10ks">10 ks</option> <option VALUE="10ks a více">10 ks a více</option> </select> </td> </tr> <tr><td></td><td class="smaller">např. T38, K2, O9</td><td class="smaller">např.: hnědá = 9, modrá = 17</td><td></td></tr> |
||
Chamurappi Profil |
#2 · Zasláno: 15. 11. 2013, 01:52:45
Reaguji na ondru15:
Na prvním řádku ti mezi type"text/javascript" chybí rovnítko, ale tím to nebude. Kód jsem si důkladně prohlédl a žádnou chybu nevidím, prosím o odkaz na živou ukázku.
„Nyní se při nažehlovačka neděje nic.“ A při nevybráno tedy zakázání funguje? Nemáš skript uložený v jiném kódování češtiny? Pak by ta kontrolovaná nažehlovačka mohla být ve skutečnosti jiný řetězec, než jaký je v <option> u.
|
||
ondra15 Profil |
#3 · Zasláno: 15. 11. 2013, 06:37:40
Chamurappi:
Odkaz na stránku je zde. Kódování podle mého sedí, jinak by byl samotný text nečitelný. Kód je trošku více neučesaný. Děkuji |
||
pako Profil * |
#4 · Zasláno: 15. 11. 2013, 08:27:08
Druha podmienka vo funkcii
Typ2 nastavi disabled=false na vsetky elementy vzdy, ked nieco vyberies (cize pri volbe nazehlovacka sa najskor nastavi disabled=true a vzapati sa nastavi na false - cize sa ako keby nic nedeje)
|
||
ondra15 Profil |
#5 · Zasláno: 15. 11. 2013, 08:55:55
pako:
A jaký řádek nastavuje disabled=false všem elementům? Jak by se tato chyba dala opravit?
|
||
pako Profil * |
#6 · Zasláno: 15. 11. 2013, 11:02:02
Riadok 18, 19 a 20 - ked bude v c cokolvek ine ako nevybrano - cize v momente ked nieco vyberies, tak sa nastavi pre vsetky elementy
disabled=false .
Napriklad by si mohol dat disabled atributy priamo do html kodu, takze po nahrati by boli polia nepristupne, po vybrati by si overil, ktora moznost je vybrata a podla toho spristupnil/nespristupnil jednotlive inputy. Nieco podobne co ta funkcia uz robi, ale na kazdu moznost by si povolil a zakazal inu sadu inputov.
|
||
Časová prodleva: 11 let
|
0