자바스크립트 관련 질문입니다. 도와주세요 ^^
본문
폼안에 들어있는 내용입니다.
체크하면 활성화 및 비활성화하는 내용인데
인풋박스 name 값이 하나일때는 각 인풋이 늘어날때마다 스크립트를 추가하면 되는데...
문제(질문)는
인풋박스가 여러개 있고 name이 같은 배열의 경우는 어디를 손봐야 하는 건지 모르겠습니다.
참고로
인풋박스는 대략 5개인데 name='wr_31[]' 이렇게 하여 wr_31 필드에 배열로 저장하고 있습니다.
조언좀 부탁드립니다 감사합니다
<script>
function
f_check(){
if(document.form.checkbutton.checked==true){
document.form.textbox.disabled
= true;
}
else
if(document.form.checkbutton.checked==false){
document.form.textbox.disabled
= false;
}
}
</script>
<input type='text'
name='wr_31'>
<input type='checkbox' name='checkbutton'
onclick='f_check()'>
답변 6
jquery에 prev라고 있어요.
$(this).prev()하시면 input이 text , checkbox, text, checkbox 이렇게 되어있으니 체크박스 누르면 이전것인 text를 선택할수 있어요.
jquery 예제는 봤는데 그걸 사용하지 않고 순수 스크립트로 구현하려고 합니다. 안되려나요? ㅠㅠ
previousSibling 현재 선택자의 이전이웃선택입니다.
드래곤된다님 답변 감사합니다.
제가 지식이 좀 부족하여 내용을 이해못하고 있습니다. ㅠㅠ
저의 질문은 체크박스 체크시 다수의 input박스 활성/비활성을 구현하였는데
문제는 다수의 input 박스가 배열이라서 name이 wr_31[] 로 같아서 고민하는 경우입니다...
<input type="text" name="wr_31[]">
<input type="checkbox" name="checkbutton" onclick="f_check()">
<br />
<input type="text" name="wr_31[]">
<input type="checkbox" name="checkbutton" onclick="f_check()">
<br />
<input type="text" name="wr_31[]">
<input type="checkbox" name="checkbutton" onclick="f_check()">
<br />
<input type="text" name="wr_31[]">
<input type="checkbox" name="checkbutton" onclick="f_check()">
<script type="text/javascript">
function f_check(obj) {
var chk = document.getElementsByName("checkbutton");
var inp = document.getElementsByName("wr_31[]");
for(i=0; i<chk.length; i++) {
inp[i].disabled = chk[i].checked ? true : false;
}
}
</script>
이미 하셨다고 하시니...그냥 올립니다. ㅎ