Autor Zpráva
Prkny
Profil
Dobrý den, mám formulář s např. 20 checkboxy. Ty checkboxy jsou v několika skupinách. Rád bych javascriptem udělal, že když zakliknu checkbox, tak všechny ostatní checkboxy v dané skupině se provedou disabled.
Pokud zakliknutý checkbox, odkliknu tak se disable u dané skupiny zruší.

To by asi mělo jít onclickem, problém ale je když formulář reloadnu, tak u vybraných checkboxů bude zatrženo "checked". U této skupiny by také měly být ostatní disabled.

Jde mi tedy o to, aby si uživatel mohl vybrat pouze jeden checkbox v jedné skupině.

<form action="vyber_up.php" method="post" name="formular">
  <input type="checkbox" name="průměr" value="20 cm"> 
  <input type="checkbox" name="průměr" value="30 cm">
  <input type="checkbox" name="průměr" value="40 cm">
  
  <input type="checkbox" name="materiál" value="kůže">
  <input type="checkbox" name="materiál" value="kov">
  <input type="checkbox" name="materiál" value="dřevo">
  <input type="checkbox" name="materiál" value="hliník">

  <input type="checkbox" name="délka" value="7 m">
  <input type="checkbox" name="délka" value="8 m">
  <input type="checkbox" name="délka" value="9 m">
  <input type="checkbox" name="délka" value="10 m">

  <input type="submit" value="OK">
</form>          

Předem děkuji za pomoc.
_es
Profil
Prkny:
Využiješ vlastnosti chcecked a disabled podobne ako podľa rady v Formulář - radio button - disable dalsi button

když formulář reloadnu, tak u vybraných checkboxů bude zatrženo "checked"
To musíš predsa spraviť na serveri, aby vrátil HTML kód s prvkami formulára s atribútmi aké chceš.
Prkny
Profil
_es:
V tom, odkazovaném příkladu jsou ale předem známé checkboxy. Nyní mám ty checboxy generované z db. Doufal jsem že by to mohlo jít blokovat třeba právě přes tu skupinu.
Pokud by to nešlo musel bych asi nejspíš ten javascript generovat přes php.
_es
Profil
Prkny:
Nyní mám ty checboxy generované z db
Prehliadaču je predsa jedno ako HTML kód vznikol.
Prkny
Profil
Pokud udělám onclick, tak to funguje jak bych potřeboval jen částečně. Pokud zakliknu ostatní jsou disabled, ale pokud odkliknu tak stále ty ostatní zůstávají disabled ... co s tím ?


  <input type="checkbox" id="prumer" name="průměr" value="20 cm" 
      onclick="document.getElementById('prumer1').disabled=true; document.getElementById('prumer2').disabled=true;"> 20 cm<br> 
  <input type="checkbox" id="prumer1" name="průměr" value="30 cm"
      onclick="document.getElementById('prumer').disabled=true; document.getElementById('prumer2').disabled=true;"> 30 cm<br>
  <input type="checkbox" id="prumer2" name="průměr" value="40 cm"
      onclick="document.getElementById('prumer1').disabled=true; document.getElementById('prumer').disabled=true;"> 40 cm<br>
_es
Profil
Prkny:
pokud odkliknu tak stále ty ostatní zůstávají disabled ... co s tím ?
Otestuješ, akú má hodnotu checkbox, na ktorý si klikol (this.checked) a podľa toho spravíš čo chceš.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: