Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [js + php] Checkboxy a tablica php
Immortal
post 21.11.2003, 11:33:37
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 11.05.2002
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Mam następującą funkcję java script:

Kod
function checkAll(field)

{

    

if(document.kartygraficzne.checkall.value == 'Zaznacz wszystkie') {

    document.kartygraficzne.checkall.value = 'Odznacz wszystkie';

  

for (i = 0; i < field.length; i++)

    field[i].checked = true;

    

  }

  

else if(document.kartygraficzne.checkall.value == 'Odznacz wszystkie') {

  

  document.kartygraficzne.checkall.value = 'Zaznacz wszystkie';

  

for (i = 0; i < field.length; i++)

    field[i].checked = false;



}  

}


Teraz formularz:

Kod
<form action="compare.php" name="kartygraficzne" method="post" target="Porównanie">


W tym miejscu następuje pętla, która wczytuje z pliku elementy i dodaje na końcu każdej linii checkboxa:

Kod
<input type="checkbox" name="do_compare" value="<?=$i;?>">


No i oczywiście przycisk:
Kod
<input type="button" name="checkall" value="Zaznacz wszystkie"

onClick="checkAll(document.kartygraficzne.do_compare)">


Wszystko byłoby ok, gdyby nie zależało mi na tym, by zaznaczone elementy wczytać przy wysyłaniu do tablicy (wtedy w polu name checkboxa wstawiam naturalnie "do_compare[]") i odczytać je w docelowym skrypcie (compare.php).
Moje pytanie dotyczy komunikacji javascript i php (wiem, że jeden to client-side, drugi server-side) - jak zrobić zaznaczanie/odznaczanie wszystkich checkboxów i dodawanie zaznaczonych elementów do tablicy jednocześnie? Mam nadzieję, że wyraziłem się jasno smile.gif
Go to the top of the page
+Quote Post
FiDO
post 21.11.2003, 12:45:26
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


O ile dobrze Cie zrozumialem mozesz zrobic tak:
Kod
function checkAll(form, fields)

{

elts = document.forms[form].elements[fields];

    

if(document.forms[form].checkall.value == 'Zaznacz wszystkie')

{

  document.forms[form].checkall.value = 'Odznacz wszystkie';

  val = true;  

}  

else if(document.kartygraficzne.checkall.value == 'Odznacz wszystkie')

{

  document.kartygraficzne.checkall.value = 'Zaznacz wszystkie';

  val = false;

}    

    

  for (i = 0; i < elts.length; i++)

    elts[i].checked = val;  

}


W formularzu pola te nazywasz tak jak chciales ("do_compare[]") i powinno chulac.. ale nie sprawdzalem (choc widzialem cos podobnego chyba w phpMyAdmin).


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
Immortal
post 21.11.2003, 13:36:45
Post #3





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 11.05.2002
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Działa smile.gif THX a lot biggrin.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.04.2024 - 14:38