Autor | Zpráva | ||
---|---|---|---|
Dandys2012 Profil * |
#1 · Zasláno: 25. 7. 2012, 14:12:01
Nejsem JavaSkripťák, takže jsem narazil na problém. Mam několik checkboxů číslovaných různorodě.
Např. ch12 ch19 ch28 ch45 ch66 ch88 ch102 A vim, že chci vybrat všechny zaškrtnout všechny checkboxy od ch19 až po ch66. Tyto dva znám konkrétně.. mezi nimi můžou být různé. Zkoušel jsem tohle: for(a=19;a==66;a++) { document.getElementById("ch["+a+"]").checked="checked"; } Ale nefunguje. Poraďte prosím, kdo máte nějaký nápad. |
||
panther Profil |
#2 · Zasláno: 25. 7. 2012, 14:14:59
Dandys2012:
druhy parametru cyklu for ma byt podminka, ktera se testuje. Jelikoz se 19 nikdy nebude rovnat 66, nevypise se nic.
for(a=19;a<=66;a++) |
||
Dandys2012 Profil * |
#3 · Zasláno: 25. 7. 2012, 14:16:36
Bohužel ani tak to nefunguje.. zřejně narazí na problém, že neexistují ch20, ch21, ch22, atd..
|
||
_es Profil |
#4 · Zasláno: 25. 7. 2012, 14:18:34
Hranaté zátvorky tam dávaš prečo? Vlastnosť
checked môže mať hodnotu true alebo false . Tie checkboxy sú kde? Ak vo formuláre, tak to ide jednoduchšie.
|
||
Dandys2012 Profil * |
#5 · Zasláno: 25. 7. 2012, 14:19:40
Jsou ve formuláři. Ale já nechci začkrtnout všechny.. chci jen checkboxy mezi 19 a 66 včetně. Hranatý závorky tam dávam, pač jsem to někde vyčet.. jak je to teda kodově správně?
|
||
_es Profil |
Dandys2012:
„Mam několik checkboxů číslovaných různorodě.“ Čo presne znamená v tvojom ponímaní „číslovanie checkboxu“? |
||
Dandys2012 Profil * |
#7 · Zasláno: 25. 7. 2012, 14:25:11 · Upravil/a: Dandys2012
PHP mi na základě určitýho výpočtu vyhází několik checkboxů. Např. (jak jsem už psal)
ch12 ch19 ch28 ch45 ch66 ch88 ch102 Následně (nemůžu je zaškrtnout už během generování ) pak vim, že mam zaškrtnout všechny mezi 19 a 66. ch12, ch19 apod. jsou name checkboxu. |
||
_es Profil |
Dandys2012:
„PHP mi na základě určitýho výpočtu vyhází několik checkboxů.“ No a ako konkrétne jeden z tých checkboxov vyzerá? Teda konkrétny HTML kód. Dandys2012: „ch12, ch19 apod. jsou name checkboxu.“ No a pozrel si si vôbec, na čo slúži metóda document.getElementById? |
||
Dandys2012 Profil * |
#9 · Zasláno: 25. 7. 2012, 14:30:13
Může vypadat např. tak:
<script> function kontrola_pri_kliknuti(posledni) { for(a=3359;a<=3389;a++) { document.getElementById("ch["+a+"]").checked="true"; } } </script> <input onClick="kontrola_pri_kliknuti(3314);" type="checkbox" name="ch3314"/> <input onClick="kontrola_pri_kliknuti(3359);" type="checkbox" name="ch3359"/> <input onClick="kontrola_pri_kliknuti(3388);" type="checkbox" name="ch3388"/> <input onClick="kontrola_pri_kliknuti(3389);" type="checkbox" name="ch3389"/> <input onClick="kontrola_pri_kliknuti(3393);" type="checkbox" name="ch3393"/> |
||
_es Profil |
#10 · Zasláno: 25. 7. 2012, 14:33:28
Dandys2012:
K prvkom formulára je možný prístup: objektFormulára.elements["namePrvku"] |
||
Dandys2012 Profil * |
#11 · Zasláno: 25. 7. 2012, 14:36:15 · Upravil/a: Dandys2012
Takže když formuláři přiřadim id="formular1", tak pak k prvkům přistupuju formular1.elements["ch3314"] ?
for(a=19;a<=66;a++) { formular1.elements("ch["+a+"]").checked="true"; } Bohužel ani tohle mi nejde. teda tak: formular1.elements["ch["+a+"]"].checked="true"; Ani tak: for(a=prvni;a<=posledni;a++) { formular1.elements["ch"+a].checked="true"; } |
||
Chamurappi Profil |
#12 · Zasláno: 25. 7. 2012, 15:07:45
Reaguji na Dandyse2012:
„Takže když formuláři přiřadim id="formular1", tak pak k prvkům přistupuju formular1.elements["ch3314"] ?“ Ne. Když chceš najít formulář podle id , použiješ metodu na hledání podle id , o které už víš.
„checked="true";“ Hodnotou vlastnosti checked je true nebo false , ne řetězec.
|
||
Dandys2012 Profil * |
#13 · Zasláno: 25. 7. 2012, 15:16:28
Teď jste mě do toho pěkně zamotali. Smazal jsi mi druhou diskusi a to sice základní věc:
Jak zaškrtnu JavaScriptem checkbox, který má name="ch3314" ?? Rád bych věděl tenhle základ.. pak už si možná poradim.. |
||
Keeehi Profil |
#14 · Zasláno: 25. 7. 2012, 15:36:00
Dandys2012:
Je to tak, jak jsi psal v [#11] s tím rozdílem, že jde vždy o name a ne o id a to jak u checkboxů tak i u formu. Nešlo by ty checkboxy name ovat postupně a tu děravou řadu mít ve value?
|
||
Chamurappi Profil |
#15 · Zasláno: 25. 7. 2012, 15:54:29
Reaguji na Dandyse2012:
„Jak zaškrtnu JavaScriptem checkbox, který má name="ch3314" ??“ Nastavíš mu vlastnost checked na true . To už ti tu bylo řečeno mnohokrát.
Objekt zaškrtávátka najdeš buď podle id pomocí metody na hledání podle id , nebo podle name v kolekci elements na objektu formuláře. Objekt formuláře najdeš buď podle id pomocí metody na hledání podle id , nebo podle name v kolekci document.forms .
|
||
_es Profil |
#16 · Zasláno: 25. 7. 2012, 17:55:02
Chamurappi:
„Objekt formuláře najdeš buď podle id pomocí metody na hledání podle id, nebo podle name v kolekci document.forms.“ Dandys2012: Alebo cez document.forms[0] , ak ide o prvý formulár v dokumente.
|
||
Dandys2012 Profil * |
#17 · Zasláno: 25. 7. 2012, 21:49:13
Dobrej nápad, díky. Zadal jsem jim id počítaný od 1 do x a o name jsem se vlastně vůbec nemusel starat.
A pak už jen: for(a=pvni;a<=posledni;a++) { document.getElementById(a).checked=true; } Takže díky a hezký den. |
||
Časová prodleva: 11 let
|
0