Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 869 Pomógł: 53 Dołączył: 20.10.2003 Skąd: Przeworsk Ostrzeżenie: (0%)
|
Cześć!
Znalazłem w internecie funkcję i trochę ją przerobiłem. Za zadanie ma ona zaznaczać i odznaczać wybrane checkbox'y. Mam problem z podmienieniem zmiennej. Gdy jest: Kod document.forms[0].user[i].checked=option; user to name checkboxów. Chciałbym aby zamiast "user" skrypt podmienił wartość zmiennej o nazwie "name", którą wysyłam do funkcji.Może się to wydawać dla was banalny problem, ale ja na razie uczę się js-a. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dzięki. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%)
|
a) pokaż więcej kodu --> całą funkcję + wywołanie
b ) opisz problem dokładniej c) daj link do strony testowej(to niekoniecznie) |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 869 Pomógł: 53 Dołączył: 20.10.2003 Skąd: Przeworsk Ostrzeżenie: (0%)
|
Kod <script type="text/javascript"> <!-- function checkAll(name, howmuch) { if (document.forms[0].user_parent.checked == true) option = true; else option = false; for (var i=0;i<=howmuch-1;i++) { document.forms[0].user[i].checked=option; } } --> </script> <label class="tree_1"><input type="checkbox" name="user_parent" value="TRUE" onclick="checkAll(\'user\', 3)" />'.$record['title'].'</label> <label class="tree_2"><input type="checkbox" name="user" value="TRUE" />'.$record2['title'].'</label> <label class="tree_2"><input type="checkbox" name="user" value="TRUE" />'.$record2['title'].'</label> Chodzi o to, że "user" to name checkboxa. Ja chcę przy wywołaniu funkcji określić jaki jest name poprzez wysłanie danych. Nie chcę kopiować kodu i zmieniać nazwę za każdym razem. jak jest: Kod document.forms[0].user[i].checked=option; to zamiast user ma podmienić wartość zmiennej name.coś jak:
|
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%)
|
Kod document.forms[0].user[i].checked=option; --> Kod document.forms[0].getElementsByName(name)[i].checked=option;
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 869 Pomógł: 53 Dołączył: 20.10.2003 Skąd: Przeworsk Ostrzeżenie: (0%)
|
Kod document.forms[0].user[i].checked=option; --> Kod document.forms[0].getElementsByName(name)[i].checked=option; Niestety nie działa. (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Nie zaznacza wcale checkbox'ów. Wartość dobrą do zmiennej wysyłam. |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%)
|
Daj działający kod, który w tej chwili masz: nie pomieszany z PHP i taki, który jak wrzucę w FireFox-a to zadziała (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) lub link do strony
Ten post edytował kamil4u 24.04.2009, 16:34:40 |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 869 Pomógł: 53 Dołączył: 20.10.2003 Skąd: Przeworsk Ostrzeżenie: (0%)
|
Przecież już wysłałem w poprzednim poście:
Kod <script type="text/javascript">
<!-- function checkAll(name, howmuch) { if (document.forms[0].user_parent.checked == true) option = true; else option = false; for (var i=0;i<=howmuch-1;i++) { document.forms[0].user[i].checked=option; } } --> </script> |
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%)
|
Nie zrozumiałeś mnie do końca - ten kod jest IMO zły, dlatego popraw go na wzór mojego(nie mam weny żeby poprawić samemu):
Kod <html>
<body> <script type="text/javascript"> function chceckAll(x,y,z,i){ for(i=0;z=document.getElementsByName(y)[i++];) z.checked = x; } </script> <input type="checkbox" name="test1" onClick="chceckAll(this.checked,'user');">ALL 'user'<br> <input type="checkbox" name="test2" onClick="chceckAll(this.checked,'test');"> ALL 'test'<br><br><br> User: <input type="checkbox" name="user"> <input type="checkbox" name="user"><br> Test: <input type="checkbox" name="test"> <input type="checkbox" name="test"> </body> </html> |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 2 Dołączył: 23.04.2009 Ostrzeżenie: (0%)
|
Tą funkcją zaznaczysz lub odznaczysz wszystkie checkboxy o określonym atrybucie name w danym formularzu:
CODE function checkAll(trigger, name) { var els = trigger.form.elements; for (var i = 0, l = els.length; i<l; i++) { if (els[i].name == name) els[i].checked = trigger.checked; } } wywolasz ja tak: CODE onclick="checkAll(this, 'nazwaCheckboxowDoZaznaczenia')" z 10 minut probowalem sie wczytac o co dokladnie tobie chodzi, jezeli to nie o to ci chodzilo, to napisz jakiej funkcji potrzebujesz, jakie ma przyjmowac parametry i co DOKLADNIE robic, a ci ją napiszę (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
|
![]() ![]() |
|
Aktualny czas: 20.12.2025 - 17:47 |