[javascript] jQuery로 확인란이 선택되어 있는지 테스트
확인란을 선택하면 값을 1로 가져와야합니다. 그렇지 않으면 0으로 가져와야합니다. jQuery를 사용하여 어떻게해야합니까?
$("#ans").val()
이 경우 항상 나에게 하나의 권리를 줄 것입니다.
<input type="checkbox" id="ans" value="1" />
답변
사용 .is(':checked')
이 확인하고 그에 따라 값이 설정되어 있는지 여부를 결정합니다.
답변
$("#ans").attr('checked')
체크되어 있는지 알려줍니다. 두 번째 매개 변수 true / false를 사용하여 확인란을 선택 / 선택 취소 할 수 있습니다.
$("#ans").attr('checked', true);
의견에 따라 가능한 경우 prop
대신 attr
사용하십시오. 예 :
$("#ans").prop('checked')
답변
그냥 사용 $(selector).is(':checked')
부울 값을 반환합니다.
답변
// use ternary operators
$("#ans").is(':checked') ? 1 : 0;
답변
Stefan Brinkmann의 답변은 훌륭하지만 초보자에게는 불완전합니다 (변수 할당 생략). 다시 한번 확인하기 위해:
// this structure is called a ternary operator
var cbAns = ( $("#ans").is(':checked') ) ? 1 : 0;
다음과 같이 작동합니다.
var myVar = ( if test goes here ) ? 'ans if yes' : 'ans if no' ;
예:
var myMath = ( 1 > 2 ) ? 'yes' : 'no' ;
alert( myMath );
경고 ‘아니오’
이것이 도움이된다면 Stefan Brinkmann의 답변을 찬성하십시오.
답변
당신은 이것을 시도 할 수 있습니다 :
$('#studentTypeCheck').is(":checked");
답변
이전에도 동일한 문제를 발견했습니다.이 솔루션이 도움이되기를 바랍니다. 먼저, 체크 박스에 커스텀 속성을 추가하십시오 :
<input type="checkbox" id="ans" value="1" data-unchecked="0" />
가치를 얻으려면 jQuery 확장을 작성하십시오.
$.fn.realVal = function(){
var $obj = $(this);
var val = $obj.val();
var type = $obj.attr('type');
if (type && type==='checkbox') {
var un_val = $obj.attr('data-unchecked');
if (typeof un_val==='undefined') un_val = '';
return $obj.prop('checked') ? val : un_val;
} else {
return val;
}
};
확인란 값을 얻으려면 코드를 사용하십시오.
$('#ans').realVal();