Contents
see List작성일 2014. 09. 25.
jQuery 체크박스를 라디오버튼처럼 사용하기
체크박스 그룹에서 하나만 선택되도록 라디오버튼처럼 동작하게 만드는 방법입니다.
기본 방법
// 클릭한 체크박스 외 나머지 체크 해제
$(".target-classes").not($(".click-class")).attr("checked", false);
이벤트 핸들러로 구현
// jQuery 1.6 이상에서는 prop() 사용 권장
$(".checkbox-group").click(function() {
// 같은 그룹의 다른 체크박스 해제
$(".checkbox-group").not(this).prop("checked", false);
});
// 또는
$("input[name=myGroup]").change(function() {
$("input[name=myGroup]").not(this).prop("checked", false);
});
name 속성 기반 구현
<!-- HTML -->
<input type="checkbox" name="option" class="single-check" value="1"> 옵션1
<input type="checkbox" name="option" class="single-check" value="2"> 옵션2
<input type="checkbox" name="option" class="single-check" value="3"> 옵션3
<script>
$(".single-check").on("change", function() {
if ($(this).is(":checked")) {
// 현재 체크박스 외 모두 해제
$(".single-check").not(this).prop("checked", false);
}
});
</script>
그룹별 단일 선택
<!-- 그룹 A -->
<input type="checkbox" data-group="A" value="1">
<input type="checkbox" data-group="A" value="2">
<!-- 그룹 B -->
<input type="checkbox" data-group="B" value="1">
<input type="checkbox" data-group="B" value="2">
<script>
$("input[type=checkbox][data-group]").change(function() {
var group = $(this).data("group");
if ($(this).is(":checked")) {
$("input[data-group="" + group + ""]")
.not(this)
.prop("checked", false);
}
});
</script>
테이블 행 단일 선택
$("table .row-checkbox").change(function() {
if ($(this).is(":checked")) {
// 다른 행의 체크박스 해제
$("table .row-checkbox").not(this).prop("checked", false);
// 선택된 행 강조
$("table tr").removeClass("selected");
$(this).closest("tr").addClass("selected");
}
});
체크박스 vs 라디오버튼
| 특성 | 체크박스 | 라디오버튼 |
|---|---|---|
| 다중 선택 | 가능 | 불가능 |
| 선택 해제 | 가능 | 불가능 (다른 항목 선택 필요) |
| 스타일링 | 쉬움 | 브라우저마다 다름 |
Tip: 체크박스를 라디오버튼처럼 사용하면 사용자가 선택을 해제할 수 있는 장점이 있습니다.
javascript
| No | 작성일 | Title |
|---|---|---|
| 2350 | 2026. 04. 07. | ES2025 Iterator Helpers 완벽 가이드 - map, filter, take를 이터레이터에서 직접 사용하기 |
| 2336 | 2026. 04. 06. | ES2025 새 기능 실전 가이드 - Promise.try, Iterator Helpers, Set 메서드 총정리 |
| 2321 | 2026. 04. 05. | ES2026 Temporal API 완벽 가이드: Date 객체를 대체하는 새로운 표준 |
| 2296 | 2026. 04. 05. | Temporal API로 JavaScript 날짜/시간 처리 완전 정복하기 |
| 2295 | 2026. 04. 05. | ES2026 using 키워드와 Explicit Resource Management 완벽 가이드 |
| 2268 | 2026. 04. 04. | Node.js 22 완벽 가이드: 네이티브 TypeScript, WebSocket, Permission Model 실전 활용 |
| 2267 | 2026. 04. 04. | ES2025 새 기능 총정리: Promise.try, Set 메서드, RegExp 플래그까지 |
| 2216 | 2026. 02. 11. | Zustand vs Jotai: 경량 상태관리 라이브러리 비교 |
| 2215 | 2026. 02. 11. | Bun 1.x 런타임과 빌드 도구 실전 가이드 |
| 2214 | 2026. 02. 11. | TypeScript 5.x 신기능과 고급 타입 시스템 |