jQuery 체크박스를 선택하고 트리거 javascript onclick 이벤트
나는'm 확인하려 checkbox jQuery 사용 및 트리거 onclick 이벤트이다.
말이 있는 확인란에서 정의 html:
<input type="checkbox" value="checked" name="check1" onclick="alert(this.value);">
가 jQuery 문는 트리거 기능:
$('input[name=check1]').attr('checked', true);
결과는 확인란에 확인되지만 javascript onclick 이벤트가 트리거되지 않습(따라서 경고). 그러나 내가 있다면 트리거를 클릭하도 수동으로 같은:
$('input[name=check1]').attr('checked', true).trigger('click');
결과는 확인란을 얻을 확인,자바 스크립트 onclick 이벤트가 트리거(값이 올바르게 입수)그러나 다는 확인란을 얻을 선택하지 않습니다.
할 수 있는 사람이 방법을 말해 내가 달성할 수 있는 내가 무엇'm 하려고 할까?
22
4
사용
.triggerHandler()
대신.트리거()
:또한,
사용.prop()
대신.attr()
:(if you'다시 사용하여 jQuery1.6 또는 새로운.) 편집—또한,주석에는 다른 응답,당신을 조심해야 jQuery's 이상한 행동을 할 때 프로그래밍 방식으로 이벤트 트리거링. [여기에 설명 jsfiddle.](http://jsfiddle.net/Pointy/nrYec/)을 때 실제"하에서 발생하는 요소,"하는 핸들러한 요소입 업데이트 값"점검"플래그입니다. 즉,당신은 클릭하면 선택하지 않은 체크박스를 클릭 처리기조"점검"플래그 설정을
true
이다. 그러나,당신은 트리거"하에 있는 확인란을 선택하지 않을 통해 jQuery,"하는 핸들러를 볼"점검"플래그 설정을false
! 는's 는 정말 나쁜 것은,내 생각,그러나 그's 항상 하지 않는 또 다른 이유가 있습니다.편집 다시—오,또는데요,다른 중요한(그리고 자극적)jQuery 불:대한 이유를 알 수 없는
.triggerHandler()
API 만 호출 처리기에와 일치하는 요소. 하려는 경우 트리거 모든 checkbox"하는 핸들러,다른 말로:그 첫 번째는 확인란에 페이지 트리거됩니다. 내가 무슨 일반적으로 수행에 대처하기 위해 정신은 바인딩하는 핸들러와 함께 나 자신이 가짜 이벤트뿐만 아니라 이름"하:
는 방법을 트리거할 수 있"my-click"고 두 세계의 최고:라이브러리를 트리거 처리기에모일치하는 요소이지만,그't toggle 의 실제 상태 요소입니다.
변경:
하기:
이 대답세금:
$('입력[name=확인 1]').attr('점검',true).경();
[jsFiddle demo][1]
.에('변화',...)
는 확실히 당신이 무엇을해야한 바인딩을 확인란에 요소(그것은 동작을 훨씬 더 합리적으로. 다음 당신 수동으로 트리거.(클릭)
에 원하는 요소의 상태를 전환하는 적절한 이벤트가 트리거에 일어난다(참조 DOM 에 일치하는 상태를 어떤 사람들기 처리기도).