Avatar billede kimg Nybegynder
10. januar 2005 - 11:18 Der er 8 kommentarer og
1 løsning

Checkbox afkrydset

Hvordan checker jeg om mindst en af de nedenstående felter er markeret.

<input type="checkbox" name="fejl[]" value="val 1">val 1<br>
<input type="checkbox" name="fejl[]" value="val 2">val 2<br>
<input type="checkbox" name="fejl[]" value="val 3">val 3<br>

Kim
Avatar billede thomas_yde Nybegynder
10. januar 2005 - 13:06 #1
<script type="text/javascript">
function validateSelect(){
    var isSelected = false;
    var strSelected = "";
    var objs = document.getElementsByName("fejl[]");
    for(i=0;i<objs.length;i++){
        if(objs[i].checked){
            isSelected = true;
            strSelected += objs[i].value +" er valgt\n";
        }
    }
    if(isSelected)
        alert(strSelected);
    return isSelected;
}
</script>
<P>&nbsp;</P>
<input type="checkbox" name="fejl[]" value="val 1">val 1<br>
<input type="checkbox" name="fejl[]" value="val 2">val 2<br>
<input type="checkbox" name="fejl[]" value="val 3">val 3<br>

<input type="button" value="checkChecked" onClick="validateSelect();">
Avatar billede thomas_yde Nybegynder
10. januar 2005 - 13:07 #2
Du kan så udkommenter alerten når du ikke skal bruge den mere.
Avatar billede kimg Nybegynder
10. januar 2005 - 13:21 #3
Jeg har denne funktion kørende i forvejen, hvordan kan jeg sætte din model ind her

function valider( frm ) {
    if ( frm.k_navn.value.length == 0 ) {
        alert( "Skriv Navn!" );
        frm.k_navn.focus();
        return false;
    }
    if ( frm.k_telefon.value.length == 0 ) {
        alert( "Skriv telefon nr.!." );
        frm.k_telefon.focus();
        return false;
    }
 
    return true;
};

Kim
Avatar billede thomas_yde Nybegynder
10. januar 2005 - 13:26 #4
function valider( frm ) {
    if ( frm.k_navn.value.length == 0 ) {
        alert( "Skriv Navn!" );
        frm.k_navn.focus();
        return false;
    }
    if ( frm.k_telefon.value.length == 0 ) {
        alert( "Skriv telefon nr.!." );
        frm.k_telefon.focus();
        return false;
    }
    if(!validateSelect){
        alert("Du skal checke mindst en af checkboxene");
        return false;
    }
    return true;
}

function validateSelect(){
    var isSelected = false;
    var objs = document.getElementsByName("fejl[]");
    for(i=0;i<objs.length;i++){
        if(objs[i].checked){
            isSelected = true;
            strSelected += objs[i].value +" er valgt\n";
        }
    }
    return isSelected;
}
Avatar billede thomas_yde Nybegynder
10. januar 2005 - 13:26 #5
rettelse:
    if(!validateSelect()){
Avatar billede thomas_yde Nybegynder
10. januar 2005 - 13:28 #6
suk...
nogle gange går det for hurtigt...
du får lige det hele

function valider( frm ) {
    if ( frm.k_navn.value.length == 0 ) {
        alert( "Skriv Navn!" );
        frm.k_navn.focus();
        return false;
    }
    if ( frm.k_telefon.value.length == 0 ) {
        alert( "Skriv telefon nr.!." );
        frm.k_telefon.focus();
        return false;
    }
    if(!validateSelect()){
        alert("Du skal checke mindst en af checkboxene");
        return false;
    }
    return true;
}

function validateSelect(){
    var isSelected = false;
    var objs = document.getElementsByName("fejl[]");
    for(i=0;i<objs.length;i++){
        if(objs[i].checked){
            isSelected = true;
        }
    }
    return isSelected;
}
Avatar billede kimg Nybegynder
10. januar 2005 - 13:40 #7
Der kommer ingen alert hvis jeg ikke udfylder, det ser ikke ud som om den checker.

Kim
Avatar billede thomas_yde Nybegynder
10. januar 2005 - 13:55 #8
Det her virker fint hos mig:

<script type="text/javascript">
function valider( frm ) {
    if ( frm.k_navn.value.length == 0 ) {
        alert( "Skriv Navn!" );
        frm.k_navn.focus();
        return false;
    }
    if ( frm.k_telefon.value.length == 0 ) {
        alert( "Skriv telefon nr.!." );
        frm.k_telefon.focus();
        return false;
    }
    if(!validateSelect()){
        alert("Du skal checke mindst en af checkboxene");
        return false;
    }
    return true;
}

function validateSelect(){
    var isSelected = false;
    var objs = document.getElementsByName("fejl[]");
    for(i=0;i<objs.length;i++){
        if(objs[i].checked){
            isSelected = true;
        }
    }
    return isSelected;
}
</script>
<form onsubmit="return valider(this);">
<input name="k_navn">
<input name="k_telefon">
<P>&nbsp;</P>
<input type="checkbox" name="fejl[]" value="val 1">val 1<br>
<input type="checkbox" name="fejl[]" value="val 2">val 2<br>
<input type="checkbox" name="fejl[]" value="val 3">val 3<br>
<input type="submit">
</form>
Avatar billede kimg Nybegynder
12. januar 2005 - 14:52 #9
Har fået det til at virke, tror det var Explorer der gemte den gamle .js fil i cachen.

Tak for hjælpen.

Kim
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