<label style=선택자><input 체크 버튼></label> 구조에서 스타일 지정?
본문
<label style=선택자><input 체크 버튼></label> 구조에서
input 체크박스에 체크가 되어있다면 label의 스타일 선택자를 aaa 불러오고
input 체크박스에 체크가 안 되었다면 label의 스타일 선택자를 bbb 불러오는 방법?
답변 4
<style>
.aaa {background:red; width:50px; height:30px;}
.bbb {background:blue; width:50px; height:30px;}
</style>
<label class="aaa" id="labelid"><input type="checkbox" id="ckid" name="ckname" onclick="javascript:scp_check()"></label>
<script>
function scp_check(){
var obj = document.getElementsByName("ckname")
var labelobj = document.getElementById("labelid");
if(obj[0].checked==true){
labelobj.className="bbb";
}else{
labelobj.className="aaa";
}
}
</script>
<label style=선택자 id="labelid"><input 체크 버튼 id="ckid" name="ckname"></label>
<script>
var obj = document.getElementsByName("ckname")
var labelobj = document.getElementById("labelid");
if(obj[0].checked==true){
labelobj.style="aaa"
}else{
labelobj.style="bbb";
}
</script>
label.aaa {background:red; width:50px; height:30px;}
label.bbb {background:blue; width:50px; height:30px;}
이건뭔가요?? 이건 클래스를 준건가요?
클래스를 주실려면 이렇게 하면 안되죠..
labelobj.className = "aaa";
이렇게 하던가
style에서 직접 스타일을 주던가요..
labelobj.style="background:red; width:50px; height:30px;"
이렇게요.
obj[0] 배열 맞습니다. name 로 받은 obj값은 배열로 들어옵니다. 그래서 name 값은 한페이지에 여러개가 올수가있습니다. 지금은 하나밖에 없으니 obj[0] 인겁니다.