์ด๋ฒ ํฌ์คํ ์์๋ jQuery๋ฅผ ์ด์ฉํ์ฌ ์ฌ์ฉ์๊ฐ ์ ํํ ๋ผ๋์ค ๋ฒํผ์ด๋ ์ฒดํฌ๋ฐ์ค๋ฅผ ํด์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ด ๋๋ค.
๋ผ๋์ค ๋ฒํผ ํด์ ํ๊ธฐ
์ฐ์ ์๋์ ๊ฐ์ ํ๋ฉด์ ํ๋ ๋ง๋ค์ด ์ค๋๋ค.
html ์ ์๋์ฒ๋ผ ์์ฑํ์ต๋๋ค.
<div>
<input type="radio" name="fruit" value="orange"><label>์ค๋ ์ง</label>
<input type="radio" name="fruit" value="apple"><label>์ฌ๊ณผ</label>
<input type="radio" name="fruit" value="banana"><label>๋ฐ๋๋</label>
<button onclick="deselect()">์ ํํด์ </button>
</div>
์ฌ๊ธฐ์ name ๊ฐ์ด ์ค์ํฉ๋๋ค. ๋ผ์ด์ค ๋ฒํผ์ ํ๋์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ด์ฃผ๋ ์์ฑ์ด๊ธฐ ๋๋ฌธ์ด์ฃ .
์ฒ์์ ์๋ฌด๋ฐ ๋ฒํผ์ด ์ ํ์ด ์๋์ด์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์คํฌ๋ฆฝํธ๋ ์๋์ฒ๋ผ ์์ฑํฉ๋๋ค.
function deselect() {
// name์ด fruit์ธ ๋ผ๋์ค ๋ฒํผ ์ผ๊ด ํด์
$("input:radio[name='fruit']").prop('checked', false);
}
์ ํํด์ ๋ฒํผ์ ํด๋ฆญํ๋ฉด deselect ํจ์๋ฅผ ํธ์ถํ๊ณ ํจ์ ๋ด์์๋ radio ๋ฒํผํ์ ์ input ์ค์์ name๊ฐ์ด fruit์ธ ๊ฒ๋ค์ ์ฒดํฌ์ํ๋ฅผ false๋ก ์ค์ ํฉ๋๋ค. ์ฆ, fruit name์ ์ํ ๋ชจ๋ ์ฒดํฌ์ํ๊ฐ ํด์ ๋๊ฒ ๋ฉ๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ก ๋ผ๋์ค ๋ฒํผ ์ฒดํฌ ํด์ ํ๊ธฐ
jQuery๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ์ง์ ๊ตฌํํ๋ ค๋ฉด ์๋์ ๊ฐ์ด ์์ฑํ ์ ์์ต๋๋ค.
function deselect() {
var fruits = document.getElementsByName("fruit");
for (var i = 0; i < fruits.length; i++) {
if (fruits[i].getAttribute('type') === 'radio') {
fruits[i].checked = false;
}
}
}
์ฒดํฌ๋ฐ์ค ์ ํ ํด์ ํ๊ธฐ
๋ง์ฝ ๋ผ๋์ค ๋ฒํผ์ด ์๋๋ผ ์ฒดํฌ๋ฐ์ค์ผ ๊ฒฝ์ฐ ์ ํ์(selector)๋ง ์๋์ ๊ฐ์ด ๋ณ๊ฒฝํด์ฃผ๋ฉด ๋ฉ๋๋ค.
function deselect() {
// name์ด fruit์ธ ์ฒดํฌ๋ฐ์ค ์ผ๊ด ํด์
$("input:checkbox[name='fruit']").prop('checked', false);
}
์ฒดํฌ๋ฐ์ค/๋ผ๋์ค๋ฒํผ ์ผ๊ด ํด์ ํ๊ธฐ
๊ทธ๋ผ ๋ง์ฝ ๋ผ๋์ค ๋ฒํผ๊ณผ ์ฒดํฌ๋ฐ์ค๋ฅผ ๋ชจ๋ ํด์ ํ๋ ค๋ฉด ์ด๋ป๊ฒ ํ ๊น์?
selector์์ radio๋ checkbox๋ผ๊ณ ๋ช ์ํ ๋ถ๋ถ๋ง ๋นผ์ฃผ๋ฉด ๋ฉ๋๋ค.
๋จ, ๋์ผํ name ๊ฐ์ผ๋ก ๋ฌถ์ฌ์์ด์ผ ํฉ๋๋ค.
function deselect() {
// name์ด fruit์ธ ๋ชจ๋ input ์ ์ฒดํฌ ์ํ ์ผ๊ด ํด์
$("input[name='fruit']").prop('checked', false);
}
์ด๋ ๊ฒ ๋ง์ด์ฃ .
๊ฐ๋จํ์ฃ ?
์ค๋๋ ์ฆ์ฝํ์ธ์~