Skip to content Skip to sidebar Skip to footer

How To Apply Checkbox With Functions In Javascript?

How to apply checkbox with functions in javascript? How to hide post/object with specific tags when checkbox is unchecked? I just need to know how to put functions for the checkbox

Solution 1:

If I understood your question correctly, you are attempting to hide/show a group of elements when a checkbox is checked/unchecked. This should be enough to get you going:

http://jsfiddle.net/HsCVq/

HTML:

<divclass="hideWhenChecked">hide text</div><div>dont hide text</div><divclass="hideWhenChecked">hide text</div><div>dont hide text</div><br /><inputtype="checkbox"id="myCheckBox" />

JavaScript:​

document.getElementById('myCheckBox').addEventListener('click', function () {
    var checked = this.checked;
    var elementsToHide = document.getElementsByClassName('hideWhenChecked');

    if (checked) {
        // hide each element
    } else {
        // show each element
    }
});​

I'd suggest looking into a javascript framework such as jQuery to make this code a lot simpler.

Solution 2:

With jQuery

Something like this is pretty trivial with jQuery:

$("form").on("click", ":checkbox[name^='toggle_']", function(event){
  $( "#" + event.target.name.split('_')[1] )
    .toggle( event.target.checked );
});

But you shouldn't use jQuery just for something like this - that would be overkill.

Old-fashioned JavaScript, the way your Grandfather did it.

Here's a quick implementation (tested in IE7+). It works by extracting the corresponding element to hide from the name of the checkbox being clicked.

<formname="myform"><inputname="toggle_checkBox"type="checkbox"checked /><divid="checkBox">
    If checked, you'll see me.
  </div></form>

This checkbox, when clicked will hide the DIV below it.

var myform = document.forms.myform;
var inputs = myform.getElementsByTagName("input");

functiontoggleElement () {
 var e = event.target || window.event.srcElement;
 var display = e.checked ? "" : "none" ;
 document.getElementById( e.name.split('_')[1] ).style.display = display;
}

for ( var i = 0; i < inputs.length; i++ ) {
  var chk = inputs[i];
  if ( chk.type == "checkbox" && /^toggle_/.test( chk.name ) ) {
    if ( chk.addEventListener ) {
      chk.addEventListener("click", toggleElement, false); 
    } elseif ( chk.attachEvent ) {
      chk.attachEvent("onclick", toggleElement);
    }
  }
}

Demo: http://jsbin.com/ibicul/5

Solution 3:

Have a look at this

HTML:

<form><!-- for keeping checkbox checked when page loads use checked="checked" ---><inputtype="checkbox"name="check"onclick="toggle(this.form.check);"checked="checked"><inputtype="checkbox"name="check1"/><br><br></form><!-- the id of this element is used in script to set visibility ---><divid="text"style="visibility:hidden"> 
        My visibility is based on checkbox selection 
    </div>

Script

<script>functiontoggle(check)
    { if(!check.checked)
    {
    document.getElementById('text').style.visibility='visible';
    }
    else
    {
    document.getElementById('text').style.visibility='hidden';
    }
    }
</script>

This should work :)

Post a Comment for "How To Apply Checkbox With Functions In Javascript?"