Autor Zpráva
Petr1234
Profil *
Zdravím,

potřeboval bych poradit s výběhem checkboxů. Mám na stránce několik checkboxů:

<input type="checkbox" name="user[1]" value="1" />
<input type="checkbox" name="user[2]" value="1" />
<input type="checkbox" name="user[3]" value="1" />
<input type="checkbox" name="user[4]" value="1" />
<input type="checkbox" name="user[5]" value="1" />


Našel jsem si nějakou funkci, která to tak nějak uměla, ale ne když mám checkboxy jako nyní - pole. Můžete mi prosím někdo poradit jak dělat tento výběr pomocí klasického input type="submit"?
xmark
Profil
Co přesně znamená "výběh checkboxů"?
Petr1234
Profil *
No že se zaškrtnou.
Tori
Profil
Mají se zaškrtnout vždy všechny, nebo různé kombinace podle toho, na co se kliknulo?
Pokud všechny, tak si napište funkci, které předáte odkaz na objekt formuláře a název checkboxu (bez indexu, např. "user"). Ta fce pak může buď projít všechny checkboxy a kontrolovat začátek názvu, nebo cyklem for zkoušet postupně "user[1]", "user[2]",... dokud nenajde neexistující index. Druhá možnost ovšem vyžaduje, aby byly indexy v nepřetržité řadě.
Ještě by ta funkce mohla mít volitelný 3.param s polem indexů, které se mají zaškrtnout.

No a taky by to šlo udělat takhle:
<input type="checkbox" name="user[]" value="1" />
<input type="checkbox" name="user[]" value="2" />
<input type="checkbox" name="user[]" value="3" />
<input type="checkbox" name="user[]" value="4" />
<input type="checkbox" name="user[]" value="5" />

Zpracování formuláře se změní jen trochu a usnadníte si výběr všech checkboxů (jestli to chcete tak).
Petr1234
Profil *
No mají se vybrat právě úplně všechny. Posloupnost indexů právě nejde po sobě mají třeba 3, 4, 8, 22 atd... A různí se to při reloadu stránky. Vůbec JS nerozumím, proto bych chtěl požádat, zda byste mi někdo tuto drobnou funkci nenapsal... Díky moc.
__construct
Profil
Petr1234:
proto bych chtěl požádat, zda byste mi někdo tuto drobnou funkci nenapsal…
Tak to potom píšeš do zlej kategórie

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: