테스트 사이트 - 개발 중인 베타 버전입니다

다중 select 질문입니다. 채택완료

kujira 6년 전 조회 2,488

지금 지역 > 호선 > 역명 으로 이어지는 다중 select를 만들고 있는데요.

막히는 부분이 있어서 질문드립니다.

 

일단 스크립트 부분은

</p>

<p>$(document).on('change', '.sel1', function(){

        var i = $(this).index('.sel1');</p>

<p>        var sel2 = $('.sel2');</p>

<p>        var queryString = 'cate1='+ $(this).val();</p>

<p>        //alert('queryString = '+ queryString);

        //return false;</p>

<p>        $.ajax({

            type            : 'post',

            data            : queryString,

            url                : '<a href="http://diet.idealja.gethompy.com/works/111_setOpt.php'," target="_blank" rel="noopener noreferrer">http://diet.idealja.gethompy.com/works/111_setOpt.php',</a>

            dataType    : 'html',  //받을 방식

            success        : function(result, txtStatus){

                //sel2.eq(i).html('<option value="">=호선선택=</option>');

                sel2.eq(i).append(result);

            },

            error            : function(request, status, error){

                alert("code : "+ request.status +"\n"+"message : "+ request.responseText +"\n"+"error : "+ error);

            }

        });

    });</p>

<p>

 

select 부분

</p>

<p><select name="etc_11[]" onchange="setCategory2()" class="sel1">

    <option value="">=지역선택=</option>

    <option value="1" >수도권</option>

    <option value="3" >부산</option>

    <option value="4" >대전</option>

    <option value="2" >대구</option>

    <option value="5" >광주</option>

</select></p>

<p><select name="etc_12[]" class="sel2">

    <option>=호선선택=</option>

</select></p>

<p><select name="etc_13[]" class="sel3">

    <option>=역선택=</option>

</select></p>

<p>

 

111_setOpt.php 부분

</p>

<p><?

    $root = $_SERVER['DOCUMENT_ROOT'] ."/";

    include "{$root}db.inc.php";

    include "{$root}config.inc.php";

    

    $cate1 = '';

    $cate1 = $_POST['cate1'];

    $strOpt = '';

    

    $sql_sub1 = "select * from con_subway_info where subway_code like '".$cate1."%' and depth = '2'";

    $result = $GLOBALS['lib_common']->querying($sql_sub1);    </p>

<p>    while($sub1 = mysql_fetch_array($result)){

        $strOpt .= '<option value= "'.$sub1[subway_code].'" >'.$sub1[subway_name].'</option>';

    }        </p>

<p>

    echo $strOpt;

?></p>

<p>

 

 

이렇게 되어있습니다.

위 내용은 http://diet.idealja.gethompy.com/works/metro_sel.php << 요기에서 볼 수 있구요...

 

문제는 최초 지역을 수도권으로 선택시 2depth에 수도권 호선이 나오는데 다시 1depth의 지역을 

다른 지역으로 예를들어 부산으로 변경하면 2depth의 호선 내용이 reset이 되고 부산지역의 호선만

나와야 하는데 이전에 나온 수도권지역 호선 아래에 같이 노출이 되고 있습니다. 여기서 다시 대구를 

선택하면 마찬가지로 수도권+부산+대구의 호선이 나오고 있습니다.

 

1depth를 선택시 2depth를 리셋하고 다시 선택한 1depth에 해당하는 내용만 표시하려면 어떻게 해야할까요?

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
유찬아빠
success        : function(result, txtStatus){
                //sel2.eq(i).html('');
                sel2.eq(i).empty().append(result); //먼저 비우고 append 하세요
            },
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

k
kujira
6년 전
감사합니다!!!

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인