[질문]올려야될 카테고리가;;;; 정보
[질문]올려야될 카테고리가;;;;
본문
http://www.inyouth.or.kr/contents/cyber/p5_t.asp?a_site=2_5
테스트 주소 인데요... 3번째 칸에 대상입력 부분에서,
직접입력을 누르면 셀렉트박스가 비활성화되고, 다시 누르면 활성화가 되야되는데....
체크박스가... 해제가 안되네요;;; 첨 겪어보는 상황이라 많이 당황스러운데요;;;
소스는..
// 자바스크립트
function changes(fr) {
if(fr=="1") {
//뿌려줄값을 배열로정렬
num = new Array("5학년","6학년");
vnum = new Array("초등5학년","초등6학년");
} else if(fr=="2") {
num = new Array("1학년","2학년","3학년");
vnum = new Array("중등1학년","중등2학년","중등3학년");
} else if(fr=="3") {
num = new Array("1학년","2학년","3학년");
vnum = new Array("고등1학년","고등2학년","고등3학년");
} else if(fr=="4") {
num = new Array("----");
vnum = new Array("근로청소년");
} else if(fr=="5") {
num = new Array("----");
vnum = new Array("무직청소년");
} else if(fr=="6") {
num = new Array("----");
vnum = new Array("학부모");
} else if(fr=="7") {
num = new Array("----");
vnum = new Array("지도자(교사)");
} else if(fr=="8") {
num = new Array("----");
vnum = new Array("기타");
}
// 셀렉트안의 리스트를 기본값으로 한다..
for(i=0; i<document.writeform.y.length; i++) {
document.writeform.y.options[0] = null;
}
//포문을 이용하여 두번째(test2)셀렉트 박스에 값을 뿌려줍니당)
for(i=0;i < num.length;i++) {
document.writeform.y.options[i] = new Option(num[i],vnum[i]);
}
}
function textChange(num){
var f = document.writeform;
if(f.y1.checked = true){
f.y0.disabled = true;
f.y.disabled = true;
f.y2.disabled = false;
f.y2.style.background = '#f1f1f1';
} else {
f.y0.disabled = false;
f.y.disabled = false;
f.y2.disabled = true;
f.y2.style.background = '#99999';
}
}
//html
<select name="y0" onchange="changes(document.writeform.y0.value)">
<option> -- 선택 -- </option>
<option value="1">초등학생</option>
<option value="2">중학생</option>
<option value="3">고등학생</option>
<option value="4">근로청소년</option>
<option value="5">무직청소년</option>
<option value="6">학부모</option>
<option value="7">지도자(교사)</option>
<option value="8">기타</option>
</select>
<select name="y">
<option> - 선택 - </option>
</select>
<input type="checkbox" name="y1" onclick="javascript:textChange();">직접입력
<input name="y2" type="text" class="groupform" size="18" disabled style="background:#999999;">
이렇게인데 문제가 뭘까요??
도움좀 부탁 드리겠습니다.
0
댓글 4개

자바스크립트 때문에 그런건가여?



var f = document.writeform;
if(!f.y1.checked){
f.y0.disabled = false;
f.y.disabled = false;
f.y2.disabled = true;
f.y2.style.background = '#99999';
} else {
f.y0.disabled = true;
f.y.disabled = true;
f.y2.disabled = false;
f.y2.style.background = '#f1f1f1';
}
}
이렇게 바꾸니까 되네요 ^^