How to trigger checkbox click event even if it's checked through Javascript code?

前端 未结 7 1090
灰色年华
灰色年华 2021-01-30 19:39

I have many checkboxes in my page and there is a select all checkbox which checks all the checkboxes. Somehow I want to emulate that click event of checkbox even if it\'s checke

相关标签:
7条回答
  • 2021-01-30 19:54

    no gQuery

    document.getElementById('your_box').onclick();

    I used certain class on my checkboxes.

    var x = document.getElementsByClassName("box_class");
    var i;
    for (i = 0; i < x.length; i++) {
        if(x[i].checked) x[i].checked = false;
        else x[i].checked = true;
        x[i].onclick();
       }
    
    0 讨论(0)
  • 2021-01-30 19:56

    Getting check status

    var checked = $("#selectall").is(":checked");
    

    Then for setting

    $("input:checkbox").attr("checked",checked);
    
    0 讨论(0)
  • 2021-01-30 19:56

    Trigger function from jQuery could be your answer.

    jQuery docs says: Any event handlers attached with .on() or one of its shortcut methods are triggered when the corresponding event occurs. They can be fired manually, however, with the .trigger() method. A call to .trigger() executes the handlers in the same order they would be if the event were triggered naturally by the user

    Thus best one line solution should be:

    $('.selector_class').trigger('click');
    
    //or
    
    $('#foo').click();
    
    0 讨论(0)
  • 2021-01-30 19:59

    You can use the jQuery .trigger() method. See http://api.jquery.com/trigger/

    E.g.:

    $('#foo').trigger('click');
    
    0 讨论(0)
  • 2021-01-30 19:59

    You can also use this, I hope you can serve them.

    $(function(){
      $('#elements input[type="checkbox"]').prop("checked", true).trigger("change");
    });
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
    
    <div id="elements">
      <input type="checkbox" id="item-1" value="1"> Item 1 <br />
      <input type="checkbox" id="item-2" value="2" disabled> Item 2 <br /> 
      <input type="checkbox" id="item-3" value="3" disabled> Item 3 <br />
      <input type="checkbox" id="item-4" value="4" disabled> Item 4 <br />
      <input type="checkbox" id="item-5" value="5"> Item 5
    </div>

    0 讨论(0)
  • 2021-01-30 20:00
      $("#gst_show>input").change(function(){
    
        var checked = $(this).is(":checked");
        if($("#gst_show>input:checkbox").attr("checked",checked)){
          alert('Checked Successfully');
        }
    
      });
    
    0 讨论(0)
提交回复
热议问题