[jquery] jquery를 사용하여 라디오에서 이벤트를 클릭하거나 변경하십시오.

내 페이지에 라디오가 있고 확인 된 라디오가 변경되면 코드가 IE에서 작동하지 않습니다.

$('input:radio').change(...);

인터넷 검색 후 사람들은 대신 클릭을 사용하도록 제안합니다 . 하지만 작동하지 않습니다.

다음은 예제 코드입니다.

<html>
    <head>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
        <script type="text/javascript">
            $('document').ready(
                function(){
                    $('input:radio').click(
                        function(){
                            alert('changed');   
                        }
                    );  
                }
            );

        </script>
    </head>
    <body>
        <input type="radio" name="testGroup" id="test1" />test1<br/>
        <input type="radio" name="testGroup" id="test2" />test2<br/>
        <input type="radio" name="testGroup" id="test3" />test3</br>
    </body>
</html>

IE에서도 작동하지 않습니다.

그래서 무슨 일이 일어나고 있는지 알고 싶어요?

또한 확인 된 라디오를 클릭하면 변경 이벤트가 다시 트리거 될까 두렵습니까?

최신 정보:

댓글을 달 수 없어 여기에 답장을하겠습니다.

IE8을 사용하고 Furqan이 제공하는 링크도 IE8에서 작동하지 않습니다. 이유를 모르겠어요 …



답변

이 코드는 나를 위해 일했습니다.

$(function(){

    $('input:radio').change(function(){
        alert('changed');
    });

});

http://jsfiddle.net/3q29L/


답변

아래와 같이 이름 속성을 지정할 수 있습니다.

$( 'input[name="testGroup"]:radio' ).change(


답변

저에게도 작동합니다. 여기에 더 나은 솔루션이 있습니다.

바이올린 데모

<form id="myForm">
  <input type="radio" name="radioName" value="1" />one<br />
  <input type="radio" name="radioName" value="2" />two
</form>

<script>
$('#myForm input[type=radio]').change(function() {
    alert(this.value);
});
</script>

jquery다른 모든 가져 오기 및 자바 스크립트 함수보다 먼저 초기화되었는지 확인해야합니다 . 기능 이기 때문 $입니다 jquery. 조차

$(function(){
 <code>
});

jquery초기화 여부를 확인 하지 않습니다. 그것은을 보장 할 <code>모든 자바 스크립트가 초기화 된 후에 만 실행됩니다.


답변

시험

$(document).ready(

대신에

$('document').ready(

또는 속기 형식을 사용할 수 있습니다.

$(function(){
});


답변

$( 'input[name="testGroup"]:radio' ).on('change', function(e) {
     console.log(e.type);
     return false;
});

이 구문은 이벤트를 처리하기 위해 좀 더 유연합니다. “변경”을 관찰 할 수있을뿐만 아니라 단일 이벤트 처리기를 사용하여 다른 유형의 이벤트도 여기에서 제어 할 수 있습니다. 이벤트 목록을 첫 번째 매개 변수에 인수로 전달하여이를 수행 할 수 있습니다. jQuery On 참조

둘째, .change ()는 .on ( “change”, handler)의 단축키입니다. 여기를보십시오 . 이벤트를 더 많이 제어 할 수 있기 때문에 .change보다는 .on ()을 사용하는 것을 선호합니다.

마지막으로 이벤트를 요소에 연결하는 대체 구문을 보여줍니다.


답변