Avatar billede canedo Nybegynder
26. februar 2005 - 21:03 Der er 7 kommentarer og
1 løsning

Ændring af funktion til formular

Denne funktion sikrer, at folk ikke har valgt mere end 10 styk checkboxe:

<script>
function tjeck(){
antal = 0;
for (i=0;i<document.f.length;i++){
    if (document.f.elements[i].type=="checkbox"){
        if(document.f.elements[i].checked){
    antal++;
            }
        }
    }
    if(antal<=10){
        return true
        }else{
        alert("Du kan højst vælge 10");
        return false;
    }
}
   
    </script>

Men desværre gælder den for hele formularen. Kan man afgrænse den så den kun gælder bestemte inputfelter med checkboxe? Så den f.eks. kun checker om der er sat MAX 10 hak i de felter som hedder "gem" og ikke i dem som hedder "slet"?
Avatar billede roenving Novice
26. februar 2005 - 21:24 #1
F.eks.

<script type="text/javascript">
function tjeck(f){
var antal = 0,e = f.elements;
for (i=0;i<e.length;i++)
  antal += (e[i].name=='gem' && e[i].type=="checkbox" && e[i].checked)?1:0;
  if(antal<=10){
    alert("Du kan højst vælge 10 gem-felter !-)");
    return false;
  }
  return true;
}
</script>

Kaldt med:

<form ... onsubmit="return tjeck(this);">
Avatar billede canedo Nybegynder
26. februar 2005 - 21:32 #2
Det virker ikke. Jeg kan sende mere end hak med formularen uden alert.
Avatar billede canedo Nybegynder
26. februar 2005 - 21:32 #3
10 hak
Avatar billede canedo Nybegynder
26. februar 2005 - 21:34 #4
Nej, nu har jeg lige ændret noget, men nu kan jeg ikke sætte nogle hak overhovedet... uanset om jeg sætter 5 eller 15 hak får jeg en alert...
Avatar billede canedo Nybegynder
26. februar 2005 - 21:40 #5
Nu virker det ;o)


<script type="text/javascript">
function tjeck(f){
var antal = 0,e = f.elements;
for (i=0;i<e.length;i++)
  antal += (e[i].name=='gem' && e[i].type=="checkbox" && e[i].checked)?1:0;
  if(antal>10){
    alert("Du kan højst vælge 10 gem-felter !-)");
    return false;
  }
  return true;
}
</script>


Læg et svar.
Avatar billede roenving Novice
26. februar 2005 - 21:41 #6
Argh, jeg havde ikke taget højde for (eller bemærket !-) hvilken betingelse, der var brugt !-)

Velbekomme '-)
Avatar billede roenving Novice
26. februar 2005 - 21:42 #7
;O)
Avatar billede roenving Novice
26. februar 2005 - 21:46 #8
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester