/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Alle checkbokse checkes
Fra : Jens Pedersen


Dato : 06-08-01 17:04

Hej ng

Jeg har en række med checkbokse (autogenerede med navnene
0chk,1chk,2chk,...osv).
Jeg vil gerne have en hovedtjekboks, der, når den bliver tjekket, sætter
kryds i alle de andre tjekbokse. Jeg kan forestille mig, det er js, der skal
bruges.

Er der nogen, der har nogle gode scripts/idéer?

--
Jens Pedersen



 
 
Marc Eley (06-08-2001)
Kommentar
Fra : Marc Eley


Dato : 06-08-01 17:23

in article 3b6ec056$0$336$edfadb0f@dspool01.news.tele.dk, Jens Pedersen at
jens@pedersen.tdcadsl.dk wrote on 06/08/01 6:04 PM:

> Hej ng
>
> Jeg har en række med checkbokse (autogenerede med navnene
> 0chk,1chk,2chk,...osv).
> Jeg vil gerne have en hovedtjekboks, der, når den bliver tjekket, sætter
> kryds i alle de andre tjekbokse. Jeg kan forestille mig, det er js, der skal
> bruges.
>
> Er der nogen, der har nogle gode scripts/idéer?


Meget simpelt, du laver en for()-løkke som looper alle dine checkboxes
igennem og sætter "checked" til true:

<script type="text/javascript">

function selectAll(){
for(i = 0; i <= 10; i++){
document.forms[0].elements[i].checked = true;
}
}

</script>

Du skal selvfølgelig definere hvor mange gange den skal loope igennem
løkken: "... i <= 10..." -> dette script looper igennem 10 gange.

/marc eley


Jens Pedersen (06-08-2001)
Kommentar
Fra : Jens Pedersen


Dato : 06-08-01 17:29

"Marc Eley" <eley@eisenstein.dk> skrev

> > Jeg har en række med checkbokse (autogenerede med navnene
> > 0chk,1chk,2chk,...osv).
> > Jeg vil gerne have en hovedtjekboks, der, når den bliver tjekket, sætter
> > kryds i alle de andre tjekbokse.
[snip]
> <script type="text/javascript">
>
> function selectAll(){
> for(i = 0; i <= 10; i++){
> document.forms[0].elements[i].checked = true;
> }
> }
>
> </script>

Tak for det gode forslag.
Nu ligger det tilfældigvis sådan, at antallet af tjekbokse varierer. Jeg
bliver nødt til at indsætte en variabel i stedet for 10. Antallet kan jeg
hive ud af en database med php, men hvordan får jeg det til at være en
variabel i js?



Jens Pedersen (06-08-2001)
Kommentar
Fra : Jens Pedersen


Dato : 06-08-01 17:31

> Tak for det gode forslag.
> Nu ligger det tilfældigvis sådan, at antallet af tjekbokse varierer. Jeg
> bliver nødt til at indsætte en variabel i stedet for 10. Antallet kan jeg
> hive ud af en database med php, men hvordan får jeg det til at være en
> variabel i js?
>
>

--
Hilsen Jens



Marc Eley (06-08-2001)
Kommentar
Fra : Marc Eley


Dato : 06-08-01 17:37

in article 3b6ec61f$0$358$edfadb0f@dspool01.news.tele.dk, Jens Pedersen at
jens@pedersen.tdcadsl.dk wrote on 06/08/01 6:28 PM:

> "Marc Eley" <eley@eisenstein.dk> skrev
>
>>> Jeg har en række med checkbokse (autogenerede med navnene
>>> 0chk,1chk,2chk,...osv).
>>> Jeg vil gerne have en hovedtjekboks, der, når den bliver tjekket, sætter
>>> kryds i alle de andre tjekbokse.
> [snip]
>> <script type="text/javascript">
>>
>> function selectAll(){
>> for(i = 0; i <= 10; i++){
>> document.forms[0].elements[i].checked = true;
>> }
>> }
>>
>> </script>
>
> Tak for det gode forslag.
> Nu ligger det tilfældigvis sådan, at antallet af tjekbokse varierer. Jeg
> bliver nødt til at indsætte en variabel i stedet for 10. Antallet kan jeg
> hive ud af en database med php, men hvordan får jeg det til at være en
> variabel i js?

Skriv javascriptet ud via PHP:

<?php

echo "<script type="....";
echo "for(i = 0; i <= $DIT_ANTAL_CHECKBOXES; i++){....";

etc...

?>

Har du andre form-elementer i din form end checkboxes?


/marc eley


Jens Pedersen (06-08-2001)
Kommentar
Fra : Jens Pedersen


Dato : 06-08-01 17:45

> Har du andre form-elementer i din form end checkboxes?

Ja. Jeg har en submit og en reset.
Mht. at printe scriptet med php; det burde jeg vel have tænkt mig til ;)

--
Jens Pedersen



Marc Eley (06-08-2001)
Kommentar
Fra : Marc Eley


Dato : 06-08-01 18:06

in article 3b6ec9e6$0$351$edfadb0f@dspool01.news.tele.dk, Jens Pedersen at
jens@pedersen.tdcadsl.dk wrote on 06/08/01 6:45 PM:

>> Har du andre form-elementer i din form end checkboxes?
>
> Ja. Jeg har en submit og en reset.
> Mht. at printe scriptet med php; det burde jeg vel have tænkt mig til ;)


OK. Jeg kom bare til at tænke på at hvis du bruger elements[i] i
javascriptet skal du huske at tage højde for knapperne, da de også er
elementer i elements[]-arrayet.

Det kunne være at du istedet skulle tjekke på dine checkboxnavne:

echo "document.forms.".$i."chk".checked == true;

istedet for:
echo "document.forms[0].elements[".$i."].checked == true;

Forstår du hvad jeg mener? det blev vist lidt kryptisk ;)


/marc eley


Marc Eley (06-08-2001)
Kommentar
Fra : Marc Eley


Dato : 06-08-01 18:08

in article 3b6ec9e6$0$351$edfadb0f@dspool01.news.tele.dk, Jens Pedersen at
jens@pedersen.tdcadsl.dk wrote on 06/08/01 6:45 PM:

>> Har du andre form-elementer i din form end checkboxes?
>
> Ja. Jeg har en submit og en reset.
> Mht. at printe scriptet med php; det burde jeg vel have tænkt mig til ;)
>

Det gik vist lidt for hurtigt ....

Sådan:
echo "document.forms[0].".$i."chk.checked == true";

istedet for:
echo "document.forms[0].elements[".$i."].checked == true";


/marc eley


Jens Pedersen (06-08-2001)
Kommentar
Fra : Jens Pedersen


Dato : 06-08-01 19:04

> Det gik vist lidt for hurtigt ....
>
> Sådan:
> echo "document.forms[0].".$i."chk.checked == true";
>
> istedet for:
> echo "document.forms[0].elements[".$i."].checked == true";

Tak for forslagene. Det var godt med noget inspiration. Jeg fik det til at
virke med:

echo "<script type='text/javascript'>
function selectAll() {
for(i=0;i<=$antal;i++) {
if(document.form.chkall.checked == true) {
document.form.elements[i].checked = true;
} else {
document.form.elements[i].checked = false;
}
}
}
</script>";

hvor "form" er navnet på formen og "chkall" er navnet på hovedcheckboksen.

--
Jens Pedersen



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408934
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste