일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자바
- ArrayList
- 자바스크립트
- table
- Visual Studio Code
- Array
- 테이블
- IntelliJ
- 문자열
- Button
- 이클립스
- vscode
- html
- 인텔리제이
- js
- CSS
- date
- list
- Java
- windows
- json
- 배열
- javascript
- Files
- string
- Eclipse
- 이탈리아
- Maven
- input
- CMD
- Today
- Total
어제 오늘 내일
[Javascript] 체크박스 하나만 선택되도록 하기 본문
체크박스를 활용하는 다양한 방법을 알아보고 있습니다.
[HTML] input 태그로 체크박스(checkbox) 만들기`
[Javascript] 체크박스(checkbox)에 선택 된 값 출력하기
[Javascript] 체크박스에 체크된 항목 개수 구하기
[Javascript] 체크박스 전체 선택 / 전체 해제 구현하기
[Javascript] 체크박스 중, 하나라도 선택해제 될 경우 전체 선택 해제 하는 2가지 방법
체크박스는 보통 다중 선택이 필요할 때 많이 사용됩니다.
만약, 사용자가 여러 개의 항목 중 한 가지만 선택해야 한다면
라디오 버튼을 사용해야 합니다.
[HTML] input 태그로 라디오버튼(radio) 만들기
[Javascript] 라디오 버튼(radio) 값 가져와서 출력하기
[Javascript] 라디오 버튼의 텍스트 클릭하여 항목 선택하기
[Javascript] 라디오 버튼 클릭하여, 텍스트 값 출력하기
하지만, 반드시 체크박스로 이 내용을 구현해야 한다면 다음과 같이 할 수 있습니다.
체크박스 하나만 선택되도록 구현하기
<input type='checkbox'
name='animal'
value='dog'
onclick='checkOnlyOne(this)'/> 개
<br />
<input type='checkbox'
name='animal'
value='cat'
onclick='checkOnlyOne(this)'/> 고양이
<br />
<input type='checkbox'
name='animal'
value='rabbit'
onclick='checkOnlyOne(this)'/> 토끼
function checkOnlyOne(element) {
const checkboxes = document.getElementsByName("animal");
checkboxes.forEach((cb) => {
cb.checked = false;
})
element.checked = true;
}
(HTML, JS 탭을 클릭하여 두 가지 코드를 모두 확인하세요.)
< HTML >
name이 animal인 3개의 체크박스가 있습니다.
각각의 체크박스들은 onclick 이벤트가 발생했을 때
'checkOnlyOne()' 함수를 호출하고,
파라미터로 this, 즉, 자기 자신 element를 전달합니다.
< JS >
const checkboxes = document.getElementsByName("animal");
document.getElementsByName() 함수는
document에서 'animal'이라는 이름을 가진 모든 element를 찾아서
NodeList 형태로 리턴합니다.
여기에서는 name='animal'인 3개의 체크박스가 리턴되었습니다.
checkboxes.forEach((cb) => {
cb.checked = false;
})
앞에서 선택 된 모든 체크박스의 checked 값을 false로 지정하여,
체크박스 선택을 해제합니다.
element.checked = true;
마지막으로,
파라미터로 전달 된 체크박스, 즉, 클릭된 체크박스의 checked 값을 true로 변경해서,
해당 체크박스가 선택되도록 합니다.
위와 같은 방법으로
여러 개의 체크박스 중 하나만 선택되도록 구현할 수 있습니다.
'IT > Javascript' 카테고리의 다른 글
[Javascript] input 박스에 영어만 입력되도록 하는 2가지 방법 (0) | 2020.11.28 |
---|---|
[Javascript] input 에서 입력 글자수 제한하는 2가지 방법 (2) | 2020.11.27 |
[Javascript] 체크박스 중, 하나라도 선택해제 될 경우 전체 선택 해제 하는 2가지 방법 (2) | 2020.11.22 |
[Javascript] 체크박스 전체 선택 / 전체 해제 구현하기 (2) | 2020.11.22 |
[Javascript] 체크박스에 체크된 항목 개수 구하기 (0) | 2020.11.15 |