상위 셀렉트박스 값 변경시 하위셀렉트박스(다수)제어하기 기능 구현 도중....

상위 셀렉트박스 값 변경시 하위셀렉트박스(다수)제어하기 기능 구현 도중....

QA

상위 셀렉트박스 값 변경시 하위셀렉트박스(다수)제어하기 기능 구현 도중....

답변 2

본문

일단 소스를 보시면 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 시키시면 됩니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 59,782
© SIRSOFT
현재 페이지 제일 처음으로