Autor Zpráva
IdemeNaHavaj
Profil
Ahoj,
snažím sa urobiť nejaký malý formulár s checkboxmi a nadpisom..

Predstavujem si to takto:

Ovocie | Zelenina | Auta | Motorky

Kliknem na ovocie, zobrazia sa mi checkboxy

Ovocie | Zelenina | Auta | Motorky
[ ] Banan
[ ] Jablko
[ ] Pomaranc
[ ] Hruska

Zakliknem si napríklad Hruska a Jablko:

Ovocie | Zelenina | Auta | Motorky
[ ] Banan
[x] Jablko
[ ] Pomaranc
[x] Hruska

Kliknem znovu na "Ovocie" a vsetky ne-check-nuté checkboxy sa skryju

Ovocie | Zelenina | Auta | Motorky
[x] Jablko
[x] Hruska

* * TERAZ SOM ZLYHAL PRI TOMTO DALEJ:

Ked odkliknem Jablko:

Ovocie | Zelenina | Auta | Motorky
[ ] Jablko
[x] Hruska

A kliknem na Ovocie, tak chyba vznikne:

Ovocie | Zelenina | Auta | Motorky
[ ] Banan
[ ] Pomaranc
[x] Hruska
Zmizlo JABLKO!

Ak kliknem znova na Ovocie:
Ovocie | Zelenina | Auta | Motorky
[ ] Jablko
[x] Hruska
JABLKO SA OPET ZJAVI!

Myslim si, ze problem bude v tom, ze pouzivam .toggle() na checkboxy

$(this).parent().children("label").not(":eq(0), .normallight").toggle();

/* .normallight = ne-checknuté || .highlight = checknuté */

a teraz ide moja otazka: AKO SA DA TENTO EFEKT UROBIT BEZ .toggle()?
Skusal som .is(":visible") no bez uspechu, skusal som aj googlit tiez bez uspechu nic mi nejde tak prosim o radu.

Dakujem.
Joker
Profil
IdemeNaHavaj:
To by mělo jít docela jednoduše, řekl bych.

1. Příslušná skupina checkboxů bude v nějakém kontejneru.
2. Když kliknu na příslušný text a mají se skrývat checkboxy, kontejneru se nastaví CSS třída, třeba "schovat".
3. Zbytek zařídí CSS.

Přímočará možnost je skrýt .schovat input[type=checkbox]:not(:checked), ale to bude fungovat až od IE9.
Více kompatibilní by mělo nejdřív skrýt .schovat input[type=checkbox] a následně zase zobrazit .schovat input[type=checkbox][checked], to by mělo fungovat od IE7.

Je to jen nástřel, ale v principu by to fungovat mělo.
IdemeNaHavaj
Profil
Joker:
Ano nejak to funguje, ale zmizne mi len ten checkbox:
Ovocie | Zelenina | Auta | Motorky
 Banan
[x] Jablko
 Pomaranc
[x] Hruska

Celý ten checkbox a text sú v jednom <label>, ako nastavím v CSS to, čo v jquery $(this).parent()?
Alebo inak po "blábolsky": .schovat label /* iba ten, v ktorom je check-nutý checkbox */

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: