-
-
안녕하세요! 오늘은 자바스크립트를 이용해 라디오 버튼의 체크 상태를 제어하고, 선택된 값을 활용하는 방법에 대해 알아보겠습니다.
웹 폼에서 라디오 버튼은 사용자에게 여러 옵션 중 하나를 선택하게 할 때 사용되죠.
사용자가 버튼을 클릭할 때마다 선택된 값을 추출하여 다른 동작을 할 수 있도록 하면, 웹 페이지의 동적인 기능을 구현할 수 있습니다.
1. 라디오 버튼 HTML 코드
먼저, 라디오 버튼을 HTML로 작성해보겠습니다.
여러 옵션을 제공하는 기본적인 라디오 버튼의 예는 다음과 같습니다.
<input type="radio" id="rd11" name="radioCheck" value="one" onclick="javascript:check();" checked="checked" />
<label for="rd11">One</label>
<input type="radio" id="rd12" name="radioCheck" value="two" onclick="javascript:check();" />
<label for="rd12">Two</label>
<input type="radio" id="rd13" name="radioCheck" value="three" onclick="javascript:check();" />
<label for="rd13">Three</label>
<input type="radio" id="rd14" name="radioCheck" value="four" onclick="javascript:check();" />
<label for="rd14">Four</label>
위 코드에서는 4개의 라디오 버튼을 만들었고, 각 버튼에 onclick="javascript:check();"를 추가하여 버튼이 클릭될 때마다 자바스크립트 함수 check()가 실행되도록 설정했습니다.
2. 자바스크립트로 선택된 값 가져오기
이제 라디오 버튼을 클릭했을 때, 선택된 값이 무엇인지 가져오는 자바스크립트 코드를 작성해볼게요.
function check() {
// 선택된 라디오 버튼의 값을 가져옵니다
var deliType = $("input[name='radioCheck']:radio:checked").val();
// 선택된 값을 콘솔에 출력
console.log("선택된 값: " + deliType);
// 선택된 값에 따라 알림창을 띄우거나 다른 동작을 할 수 있습니다
if (deliType === "one") {
alert("One을 선택했습니다.");
} else if (deliType === "two") {
alert("Two를 선택했습니다.");
} else if (deliType === "three") {
alert("Three를 선택했습니다.");
} else if (deliType === "four") {
alert("Four를 선택했습니다.");
}
}
위 코드에서 check() 함수는 라디오 버튼을 클릭할 때마다 실행됩니다.
$("input[name='radioCheck']:radio:checked").val();는 현재 선택된 라디오 버튼의 값을 가져오는 jQuery 코드입니다.
그 값을 바탕으로 선택된 옵션에 맞는 메시지를 출력하도록 했습니다.
이제 동작 방식을 설명해볼게요.
- 페이지가 처음 로드될 때 기본적으로 첫 번째 라디오 버튼이 선택되어 있습니다.
- 사용자가 다른 라디오 버튼을 클릭하면 check() 함수가 실행됩니다.
이 함수는 선택된 라디오 버튼의 값을 가져오고, 그 값에 맞는 알림창을 띄워주는 방식으로 동작합니다.
라디오 버튼을 클릭할 때마다 선택된 값이 출력되며, 그 값에 따라 다르게 동작을 할 수 있습니다.
3. jQuery 없이 순수 JavaScript로 구현하기
만약 jQuery를 사용하지 않고 순수 자바스크립트로 구현하고 싶다면, 다음과 같이 작성할 수 있습니다.
function check() {
// 모든 라디오 버튼을 가져옵니다
var radios = document.getElementsByName('radioCheck');
var deliType = "";
// 선택된 라디오 버튼을 찾기
for (var i = 0; i < radios.length; i++) {
if (radios[i].checked) {
deliType = radios[i].value;
break;
}
}
// 값을 출력하거나 다른 작업을 수행
console.log("선택된 값: " + deliType);
if (deliType === "one") {
alert("One을 선택했습니다.");
} else if (deliType === "two") {
alert("Two를 선택했습니다.");
} else if (deliType === "three") {
alert("Three를 선택했습니다.");
} else if (deliType === "four") {
alert("Four를 선택했습니다.");
}
}
순수 자바스크립트로는 getElementsByName()을 사용하여 radioCheck라는 name 속성을 가진 라디오 버튼들을 모두 가져옵니다.
그리고 각 라디오 버튼이 체크된 상태인지 확인하여 그 값을 추출하는 방식으로 작동합니다.
이번 포스트에서는 자바스크립트를 사용해 라디오 버튼을 제어하고, 선택된 값을 활용하는 방법을 소개했습니다.
jQuery를 사용하면 간편하게 값을 가져올 수 있고, 순수 JavaScript로도 충분히 구현할 수 있습니다.
웹 폼에서 사용자의 입력을 처리할 때 라디오 버튼은 자주 사용되므로,
이와 같은 방식으로 선택된 값을 동적으로 처리할 수 있으면 유용하게 활용할 수 있습니다.
이번 글이 도움이 되셨기를 바랍니다.
궁금한 점이나 추가적인 질문이 있다면 댓글로 남겨주세요!
'프로그래밍 > Front-end' 카테고리의 다른 글
자바스크립트로 엔터키 폼 전송 막는 방법 (0) | 2024.12.11 |
---|---|
자바스크립트로 웹 페이지의 '뒤로가기' 에러와 캐시 문제 해결하기 (0) | 2024.12.10 |
자바스크립트로 날짜와 시간 포맷하기 (0) | 2024.12.03 |
자바스크립트에서 날짜 및 시간 포맷팅하는 간단한 방법 (0) | 2024.11.28 |
자바스크립트로 멀티 체크박스 다중 선택 박스 제어하기 (0) | 2024.11.27 |
자바스크립트에서 빈 값 체크와 기본값 설정하는 방법 (0) | 2024.11.26 |
자바스크립트로 숫자만 입력받는 방법 (0) | 2024.11.21 |
자바스크립트로 입력값 검증하는 방법: 아이디, 비밀번호, 이메일 체크하기 (0) | 2024.11.14 |