programing

자바스크립트 코드를 통해 확인해도 체크박스 클릭 이벤트를 트리거하는 방법은?

codeshow 2023. 8. 10. 21:46
반응형

자바스크립트 코드를 통해 확인해도 체크박스 클릭 이벤트를 트리거하는 방법은?

내 페이지에 많은 확인란이 있고 모든 확인란을 확인하는 모두 선택 확인란이 있습니다.select all 버튼을 통해 확인/해제되더라도 어떻게든 확인란의 클릭 이벤트를 에뮬레이트하고 싶습니다.어떻게 해야 하나요?

jQuery를 사용할 수 있습니다..trigger()방법.http://api.jquery.com/trigger/ 을 참조하십시오.

예:

$('#foo').trigger('click');

검사 상태를 가져오는 중

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

그럼 설정용

$("input:checkbox").attr("checked",checked);

사용할 수 있습니다..change()기능도.

예:

$('form input[type=checkbox]').change(function() { console.log('hello') });

당신도 이것을 사용할 수 있습니다, 저는 당신이 그들을 대접할 수 있기를 바랍니다.

$(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>

nogQuery

document.getElementById('your_box')입니다.클릭 시();

확인란에 특정 클래스를 사용했습니다.

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();
   }

jQuery의 트리거 함수가 답이 될 수 있습니다.

jQuerydocs는 다음과 같이 말합니다. .on() 또는 해당 바로 가기 메서드 중 하나와 연결된 모든 이벤트 핸들러는 해당 이벤트가 발생할 때 트리거됩니다.그러나 .trigger() 메서드를 사용하여 수동으로 실행할 수 있습니다..trigger()를 호출하면 이벤트가 사용자에 의해 자연스럽게 트리거된 경우와 동일한 순서로 처리기가 실행됩니다.

따라서 최선의 한 줄 솔루션은 다음과 같습니다.

$('.selector_class').trigger('click');

//or

$('#foo').click();
  $("#gst_show>input").change(function(){

    var checked = $(this).is(":checked");
    if($("#gst_show>input:checkbox").attr("checked",checked)){
      alert('Checked Successfully');
    }

  });

언급URL : https://stackoverflow.com/questions/4780912/how-to-trigger-checkbox-click-event-even-if-its-checked-through-javascript-code

반응형