it-swarm.com.de

Checkbox-Status mit Javascript abrufen

Dies ist mein Kontrollkästchen HTML-Code

<input id="termsCheckbox" name="termsCheckbox" type="checkbox" value="terms" <?PHP echo $terms; ?> class="checkbox">

dies ist Javascript-Code

var terms = $("#termsCheckbox");

function validateTerms(){
if(termsCheckbox.checked == false){
terms_div.addClass("terms_error");
return false;
}
else{           
terms_div.removeClass("terms_error");
return true;
}
}

Ich möchte prüfen, ob das Kontrollkästchen markiert ist oder nicht, und falls nicht eine Klasse zu terms_div hinzufügen. Bitte helfen Sie mir, dieses Problem zu lösen. Vielen Dank

8
Sasindu H

Sie müssen auf die Variable className (pure JS) zugreifen. Im Folgenden wird davon ausgegangen, dass Ihre div eine ID von terms_div hat, dass terms_error die einzige Klasse ist, die Sie für div benötigen, und dass Sie Ihr Kontrollkästchen mit onClick="validateTerms();" einrichten

function validateTerms(){
  var c=document.getElementById('termsCheckbox');
  var d=document.getElementById('terms_div');
  if (c.checked) {
    d.className='';
    return true;
  } else { 
    d.className='terms_error';
    return false;
  }
}
13
Rudu

Live Demo(Klicken Sie zum Testen auf den Text "Terms Div")

Ich habe die mit jQuery markierte Frage nicht gesehen, aber ich habe festgestellt, dass ein jQery-Selector verwendet wurde.

Pure JS  

var terms = document.getElementById("termsCheckbox"),
    terms_div = document.getElementById("terms_div");

function validateTerms(){
    if(terms.checked == false){
        if(terms_div.className.indexOf("terms_error")<0){
            terms_div.className += " terms_error";
        }
        return false;
    }else{      
        terms_div.className = terms_div.className.replace(/\bterms_error\b/,'');
        return true;
    }
}
1
Loktar

Binden Sie einfach einen Onchange-Handler an Ihre Checkbox.

$("#termsCheckbox").change(function() {

    // class will be removed if checked="checked"
    // otherwise will be added
    $(this).toggleClass("terms_error", !this.checked);
}).change(); // set initial state
1
karim79

versuchen Sie, dem Kontrollkästchen-Tag onclick="validateTerms();" hinzuzufügen

0
cusimar9
if(document.form.termsCheckbox.checked==true)
alert('check box is cheked')
0
zod