2010-09-21 6 views
12

라디오 버튼이 선택되는 이벤트가 있습니까?라디오 버튼 이벤트가 선택 되었습니까?

나는 "클릭"을 사용할 수 있지만 일부 라디오 버튼의 라디오 버튼을 클릭하면 라디오 버튼을 선택하지 않을 수도있는 라디오 버튼을 스타일 할 수 있다고 생각합니다.

어떤 이벤트를 사용해야합니까?

+0

안녕하세요 모든 브라우저에서 항상 작동 할 것입니다. 나는 외곽 지역을 의미하는 것을 발견하지 못합니다 ... 레이블에 대해서도 클릭 이벤트를 활성화 하시겠습니까? – Vijay

답변

14

이벤트 알림을받는시기에 따라 다릅니다.

즉시 알고 싶다면 click으로 가십시오. IE는 핸들러 함수가 호출되기 전에 checked의 상태를 업데이트하고, 은 다른 브라우저도 마찬가지로라고 생각합니다. 내가 지금 IE와 작동하도록 두 번 확인하고 싶을 수도 있습니다.

다른 일이 발생하기 전에 알아야하는 경우 change을 사용할 수 있습니다. 선택한 라디오 단추가 포커스를 잃을 때까지 IE는 change 이벤트를 발생시키지 않습니다. FF/chrome/others는 포커스를 변경하지 않고 이벤트를 실행할 수 있지만 IE가 실제로이 경우에 올바르게 수행하고 있다고 생각합니다.

7

onchange 이벤트를 사용할 수 있습니다.이 이벤트는 라디오 선택이 변경되면 (즉, 그룹의 라디오 버튼이 처음 클릭되거나 그룹 내의 선택이 변경 될 때) 시작됩니다.

간단한 예를 보려면 http://jsfiddle.net/P9Z9Y/1/을 참조하십시오 (라디오 그룹의 값이 변경되면 레이블 또는 라디오 버튼을 클릭하면 alert이 트리거됩니다).

+4

IE에서 입력이 포커스를 잃을 때만 해고됩니다. 버튼을 클릭하는 것만이 포커스를 유지합니다. 그 이후 다른 곳을 클릭/탭하여 포커스를 잃게하고'change' 이벤트를 발생 시키려고합니다. – BalusC

+1

@Balus Firefox 또는 Chrome의 라디오 버튼 (라디오 그룹의 값을 변경하는 클릭시 즉시 라디오 버튼의 onchange가 발생하고 관련 '

+0

IE (다시 버전 4), NN 4.x, Safari, Opera 또는 Lotus Notes 클라이언트 중 하나. 키보드 편집 가능 필드의 경우 예 (라디오 버튼 제외). –

1

onchange 이벤트를 사용해 보셨습니까?