다중select 질문 드립니다...

다중select 질문 드립니다...

QA

다중select 질문 드립니다...

본문

수정하려고 하는 부분이 아래 이미지 캡쳐 부분으로 다중select가 세개 있습니다.


9326510b35908c20adbc576e7994c1f9_1504604486_265.JPG 

          1번                                           2번                                            3번


문제는 1번이나 2번 3번 어떤 select를 선택하고나면 다른 두개의 다중select는 선택을해도 변화가 없네요...예를들어 1번에 지역선택->수도권->지하철호선->2호선->역선택->건대입구역 이렇게

1번을 완료하고 2번이나 3번에 다른 선택을 추가하려는데 1번을 완료하고나면 2,3번은 역을 불러오지를 못합니다.


제가 수정작업하다가 막힌 다중선택부분 소스입니다.

뭐가 문제일까요.....


스크립트 부분


<script>
<!--
function loadDataSubway1(sel,target) {
	var trigger = sel.options[sel.selectedIndex].value;	// 첫번째 selectbox의 선택된 텍스트
	var form = sel.form.name;
	dynamic.src = "weddinghall_subway1.htm?form=" + form + "&trigger=" + trigger  + "&target=" + target;
}
function loadDataSubway2(sel,target) {
	var trigger = sel.options[sel.selectedIndex].value;	// 첫번째 selectbox의 선택된 텍스트
	var form = sel.form.name;
	if(target=="subway1_3") var trigger2=document.joinform.subway1_1.value;
	else if(target=="subway2_3") var trigger2=document.joinform.subway2_1.value;
	else if(target=="subwa3_3") var trigger2=document.joinform.subway3_1.value;
	dynamic2.src = "weddinghall_subway2.htm?form=" + form + "&trigger=" + trigger  + "&trigger2=" + trigger2 + "&target=" + target;
}
</script>


html부분


<select name=subway1_1 onChange="loadDataSubway1(this,'subway1_2')">
							<option value='' style="color:#81857C">지역선택</option>
							<option value='1' style="color:#81857C">수도권</option>
						</select>
						<select name=subway1_2 onChange="loadDataSubway2(this,'subway1_3')">
							<option value='' style="color:#81857C">지하철호선</option>
						</select>
						<select name=subway1_3>
							<option value='' style="color:#81857C">역선택</option>
						</select>
          	 | 
          	<select name=subway2_1 onChange="loadDataSubway1(this,'subway2_2')">
							<option value='' style="color:#81857C">지역선택</option>
							<option value='1' style="color:#81857C">수도권</option>
						</select>
						<select name=subway2_2 onChange="loadDataSubway2(this,'subway2_3')">
							<option value='' style="color:#81857C">지하철호선</option>
						</select>
						<select name=subway2_3>
							<option value='' style="color:#81857C">역선택</option>
						</select>
          	 | 
          	<select name=subway3_1 onChange="loadDataSubway1(this,'subway3_2')">
							<option value='' style="color:#81857C">지역선택</option>
							<option value='1' style="color:#81857C">수도권</option>
						</select>
						<select name=subway3_2 onChange="loadDataSubway2(this,'subway3_3')">
							<option value='' style="color:#81857C">지하철호선</option>
						</select>
						<select name=subway3_3>
							<option value='' style="color:#81857C">역선택</option>
						</select>


weddinghall_subway1.htm


<?
session_start();
include "../../Common/php/lib.php";


$trigger2 = $_GET['trigger2'];
$trigger = $_GET['trigger'];
$target = $_GET['target'];
$form = $_GET['form'];

if($trigger == "") {
	echo "document.forms['".$form."'].elements['".$target."'].length = 1; \n";	// db에서 가져온 값이 10개라면 이렇단 소리야..
	echo "document.forms['".$form."'].elements['".$target."'].options[0].selected = true;";
} else {
	$query = "select * from con_subway_info where subway_code like '$trigger%' and depth='2' order by subway_code asc";
	$result = mysql_query($query);
	$array_cnt = mysql_num_rows($result);
	

	
//	header("Content-Type: application/x-javascript");	// 요거 자바스크립트로 만들어주는거 (없어도 된단 말도 있고..)
		echo "document.forms['".$form."'].elements['".$target."'].length = ".($array_cnt+1)."; \n";	// db에서 가져온 값이 10개라면 이렇단 소리야..
		echo "document.forms['".$form."'].elements['".$target."'].options[0].selected = true;";
		$i=0;
		while($con_subway_info = mysql_fetch_array($result))
		{
		  if($trigger2 == $con_subway_info['subway_code'])
		  {
		  	echo "document.forms['".$form."'].elements['".$target."'].options[$i+1].selected = true;";
		  }
		  else
		  {
		  	echo "document.forms['".$form."'].elements['".$target."'].options[$i+1].selected = false;";
		  }
			echo "document.forms['".$form."'].elements['".$target."'].options[".($i+1)."].text = '".$con_subway_info['subway_name']."'; \n";
			echo "document.forms['".$form."'].elements['".$target."'].options[".($i+1)."].value = '".$con_subway_info['subway_code']."'; \n";
			$i++;
		}
	
}
?>


weddinghall_subway2.htm


<?
session_start();
include "../../Common/php/lib.php";

$trigger2 = $_GET['trigger2'];
$trigger = $_GET['trigger'];
$target = $_GET['target'];
$form = $_GET['form'];

if($trigger == "") {
	echo "document.forms['".$form."'].elements['".$target."'].length = 1; \n";	// db에서 가져온 값이 10개라면 이렇단 소리야..
	echo "document.forms['".$form."'].elements['".$target."'].options[0].selected = true;";
} else {
	$query = "select * from con_subway_info where subway_code like '$trigger%' and depth='3' order by subway_code asc";
	$result = mysql_query($query);
	$array_cnt = mysql_num_rows($result);
	

	
//	header("Content-Type: application/x-javascript");	// 요거 자바스크립트로 만들어주는거 (없어도 된단 말도 있고..)
		echo "document.forms['".$form."'].elements['".$target."'].length = ".($array_cnt+1)."; \n";	// db에서 가져온 값이 10개라면 이렇단 소리야..
		echo "document.forms['".$form."'].elements['".$target."'].options[0].selected = true;";
		$i=0;
		while($con_subway_info = mysql_fetch_array($result))
		{
		  if($trigger2 == $con_subway_info['subway_code'])
		  {
		  	echo "document.forms['".$form."'].elements['".$target."'].options[$i+1].selected = true;";
		  }
		  else
		  {
		  	echo "document.forms['".$form."'].elements['".$target."'].options[$i+1].selected = false;";
		  }
			echo "document.forms['".$form."'].elements['".$target."'].options[".($i+1)."].text = '".$con_subway_info['subway_name']."'; \n";
			echo "document.forms['".$form."'].elements['".$target."'].options[".($i+1)."].value = '".$con_subway_info['subway_code']."'; \n";
			$i++;
		}
	
}
?>

이 질문에 댓글 쓰기 :

답변 2

답변을 작성하시기 전에 로그인 해주세요.
전체 123,534 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT