상위 셀렉트박스 값 변경시 하위셀렉트박스(다수)제어하기 기능 구현 도중....
일단 소스를 보시면 name값 "pcno" 이라는 select박스의 선택에 따라(자바스크립트 함수 showSub())
2차 선택 name값 = "2ser" 인 select값이 style display로 가져졌다고 생겼다고 합니다.
문제는 새로 name값이 2ser로 중복이 되는데요 중복 되면 안되는거 알고 있는데.
불행하게도 이 name값이 꼭 같아야 합니다.
꼭 2ser로 같아야 검색이 가능합니다.
무슨 방법이 없을까요??ㅠ,ㅠ 1차셀렉트 선택에 따라 원하는 2차 셀렉트가 나와야 하고 ㅠ,ㅠ
그리고 name값이 둘다 꼭 같아야 하고 ㅠ.ㅠ
방법이 없을까요?
<form id="article_searchFrm" name="article_searchFrm" action="/board/index.html" method="GET" class="sms_form"><select name="pcno" id="pcno" style="height:20px" onChange="showSub(this.options[this.selectedIndex].value);"> <option value="">1차선택</option> <option value="42">가자</option> <option value="43">갑시다~</option> </select> <select name="2ser" id="111" style="height:20px" style="display:;"> <option value="">2차선택</option> <option value="aaa">aaa</option> <option value="bbb">bbb</option> </select> <select name="2ser" id="222" style="height:20px" style="display:none"> <option value="">2차선택</option> <option value="ccc">ccc</option> <option value="ddd">ddd</option>input type="button" onclick="javascript:doSearch();" align="absmiddle" value="검색"> </form> <script language="JavaScript"> <!-- function doSearch() { var frm = document.article_searchFrm; frm.submit(); } function showSub(obj) { var frm = document.forms.article_searchFrm; if(obj == 42) { document.getElementById("111").style.display = ""; document.getElementById("222").style.display = "none"; } else { document.getElementById("111").style.display = "none"; document.getElementById("222").style.display = ""; } }//--></script>
답변 2개
if(obj == 42) {
document.getElementById("111").style.display = "block";
document.getElementById("111").disabled = false;
document.getElementById("222").style.display = "none";
document.getElementById("222").disabled = true;
} else {
document.getElementById("111").style.display = "none";
document.getElementById("111").disabled = true;
document.getElementById("222").style.display = "block";
document.getElementById("222").disabled = false;
}
동일한 이름으로 넘길 경우엔 무조건 마지막에 있는 애가 다 덮어 버려서 숨기는 애만 disabled 시키시면 됩니다.
getElementById id값을 사용하고 있기때문에 name값의 중복은 상관이 없지 싶은데요
답변을 작성하려면 로그인이 필요합니다.