.prop('checked', false) 또는 .removeAtr('checked')?
프롭 방식의 도입으로 이제 나는 허용된 체크박스의 선택을 취소하는 방법을 알아야 합니다.해당:
$('input').filter(':checkbox').removeAttr('checked');
아니면
$('input').filter(':checkbox').prop('checked',false);
jQuery 3
jQuery 3 현재.removeAttr
해당 속성을 다음으로 설정하지 않습니다.false
더 이상:
jQuery 3.0 이전 버전에서는
.removeAttr()
등의 부울 속성으로checked
,selected
, 아니면readonly
또한 해당 명명된 속성을 다음으로 설정합니다.false
. 이 동작은 이전 버전의 Internet Explorer에 필요했지만 속성은 초기 값을 나타내고 속성은 현재(동적) 값을 나타내기 때문에 최신 브라우저에서는 올바르지 않습니다.사용하는 것은 거의 항상 실수입니다.
.removeAttr( "checked" )
DOM 요소에서DOM이 나중에 HTML 문자열로 다시 직렬화되는 경우에만 유용할 수 있습니다.다른 모든 경우에는.prop( "checked", false )
대신 사용해야 합니다.
따라서만.prop('checked',false)
이 버전을 사용할 때 올바른 방법입니다.
원답(2011년부터):
기본 부울 속성이 있는 속성의 경우checked
하나),removeAttr
기본 속성을 다음으로 자동 설정합니다.false
. (이는 jQuery 1.6.1에 추가된 하위 호환성 "fix" 중 하나입니다.)
둘 중 하나라도 효과가 있을 겁니다하지만 두번째 예는 (사용하는)prop
)이 둘 중 더 정확합니다.확인란의 선택을 취소하는 것이 목표라면 속성이 아닌 속성에 영향을 미치기를 원하는 것이며, 이 과정을 거칠 필요가 없습니다.removeAttr
그러려고요.
사용하다checked
: 확인란의 true, false 속성입니다.
jQuery:
if($('input[type=checkbox]').is(':checked')) {
$(this).prop('checked',true);
} else {
$(this).prop('checked',false);
}
크롬에 문제가 있었고 두 기능을 모두 사용하여 해결했기 때문에 prop와 attr 둘 다 사용하는 것을 추천합니다.
if ($(':checkbox').is(':checked')){
$(':checkbox').prop('checked', true).attr('checked', 'checked');
}
else {
$(':checkbox').prop('checked', false).removeAttr('checked');
}
동일한 작업을 수행하는 또 다른 대안은 type=checkbox 속성을 필터링하는 것입니다.
$('input[type="checkbox"]').removeAttr('checked');
아니면
$('input[type="checkbox"]').prop('checked' , false);
속성과 속성 간의 차이는 특정 상황에서 중요할 수 있습니다.jQuery 1.6 이전의 메소드는 일부 특성을 검색할 때 속성 값을 고려하는 경우가 있으며, 이로 인해 일관되지 않은 동작이 발생할 수 있습니다.jQuery 1.6 기준,
.prop()
method는 속성 값을 명시적으로 검색할 수 있는 방법을 제공합니다..attr()
속성을 검색합니다.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<input id="checkbox" type="checkbox" onchange='act(this)'>
<input id="checkbox" type="checkbox" onchange='act(this)'>
<script>
function act(element){
if($(element). prop('checked'))
{
console.log('You have Checked it');
}else
{
console.log('You Un-Checked it');
}
}
</script>
언급URL : https://stackoverflow.com/questions/6169826/propchecked-false-or-removeattrchecked
'programing' 카테고리의 다른 글
Spring Boot에서 '@DateTimeFormat' 패턴을 글로벌하게 구성하는 방법은? (0) | 2023.09.26 |
---|---|
워드 프레스 페이지에서 "http"를 "https"로 모두 변경 (0) | 2023.09.26 |
$q 약속 오류 콜백 체인 (0) | 2023.09.26 |
parse csv 파일을 Maria DB로 가져오는 방법? (0) | 2023.09.26 |
도커 로그인 알 수 없는 속기 플래그: 'e' (0) | 2023.09.21 |