input radio 체크감지 click말고 어떻게 가능할까요?
본문
name=cost라는 radio 버튼이 4개가 있습니다.
$('input[name=cost]').click(function(){
total -= n1;
n1 = $('div>input[name=wr_cost1]').index($(this));
total += n1;
$('#wr_content').val(total);
})
이런식으로 어떤걸 선택했는지 체크하고 있습니다.
그런데 리셋버튼을 적용하면서 radio 체크는 해제되는데 위 함수가 작동을 안해서 total값이 변하지 않습니다.
$('.opt1 input').attr('checked',false); 이렇게 체크해제하고 있는데 클릭말고 체크박스 상태변화를 감지하는 방법이 있을까요?
답변 4
원래는 리셋버튼을 눌러주시면
초기화 로직을 넣어주시는게 맞습니다.
그래도 혹시나해서 체크하는거 실시간으로 감지하고 싶다고 하셔서
아래코드 남겨드립니다.
확인 부탁드립니다.
코드는 테스트까지 해봤습니다^^
별도의 스레드로 체크를 실시간으로 감지하시면 됩니다.
<div id="chk_state"></div>
<script>
setInterval("chk_test()",100);
function chk_test()
{
if( $("input[name='cost']:checked").val() )
{
$("#chk_state").html('체크');
}
else
{
$("#chk_state").html('체크안함');
}
}
</script>
onchange 도 있습니당
[ 그런데 리셋버튼을 적용하면서 radio 체크는 해제되는데 위 함수가 작동을 안해서 ]
이 상황이 문제라면 리셋 후에 함수(이벤트) 실행시켜 주면 되죠.
아래 참고해서 trigger() 함수를 사용해보세요.
답변을 작성하시기 전에 로그인 해주세요.