다중 카테고리 문의

다중 카테고리 문의

QA

다중 카테고리 문의

본문

영카트 카테고리 부분을

상위의 하위개념으로 하려고 자바로 수정중인데요..

이렇게 코딩이 되어있다고 한다면.

 

#ca_id의 value값 10을 선택했을때

#ca_id2 1010,1020,1030만 뜨고

 

#ca_id의 value값 20을 선택했을때

#ca_id2 2010,2020,2030만 뜨고

 

이런식으로 하려고 js파일에 이렇게 스크립트를 짰는데용..

문제는 10을 클릭하면 각각 하위분류가 나오는데

#ca_id value 10클릭후 다시 #ca_id value 20을클릭하면

하위의 모든것들이 remove가됩니다 ㅠㅠ

상위 각각 클릭했을때 하위가 계속뜨도록어케 수정을할끼요

 

 $(document).ready(function(){
        $('#ca_id').change(function(){ //1차분류 선택시 변경된다 82
            var ca_id = $('#ca_id').val(); //1차분류 #ca_id 선택시
            if(ca_id == '10'){ //1차분류 value값이 10이라면
                       /* $("select#ca_id2 option[value='2010']").remove(); 
                        $("select#ca_id2 option[value='2020']").remove(); 
                        $("select#ca_id2 option[value='2030']").remove(); 
                        $("select#ca_id2 option[value='3010']").remove(); 
                        $("select#ca_id2 option[value='3020']").remove();

                        $("select#ca_id2 option[value='3030']").remove();
              }
        });
    });       
   

 

$(document).ready(function(){
        $('#ca_id').change(function(){ //1차분류 선택시 변경된다 82
            var ca_id = $('#ca_id').val(); //1차분류 #ca_id 선택시
            if(ca_id == '20'){ //1차분류 value값이 10이라면
                       /* $("select#ca_id2 option[value='1010']").remove(); 
                        $("select#ca_id2 option[value='1020']").remove(); 
                        $("select#ca_id2 option[value='1030']").remove(); 
                        $("select#ca_id2 option[value='3010']").remove(); 
                        $("select#ca_id2 option[value='3020']").remove();

                        $("select#ca_id2 option[value='3030']").remove();
              }
        });
    });       

      

 

 

 

<select  name="ca_id" id="ca_id" onchange="categorychange(this.form)">
    <option value="" >1차분류</option>
    <option class="a0101" value="10">1</option>
    <option class="a0101" value="20">2</option>

    <option class="a0101" value="20">3</option>

</select>

 

<select  name="ca_id2" id="ca_id2" >
    <option value="" >2차분류</option>
    <option class="a0101" value="1010">1-1</option>
    <option class="a0101" value="1020">1-2</option>

    <option class="a0101" value="1030">1-3</option>

    <option class="a0101" value="2010">2-1</option>
    <option class="a0101" value="2020">2-2</option>

    <option class="a0101" value="2030">2-3</option>

    <option class="a0101" value="3010">3-1</option>
    <option class="a0101" value="3020">3-2</option>

    <option class="a0101" value="3030">3-3</option>

</select>

 

 

이 질문에 댓글 쓰기 :

답변 2

영카트의 카테고리를 이용해서 다중선택을 구현하신다면 ajax를 이용해서 구현하시는 것이 더 유용하실꺼에요...


<!-- shop category -->
<form method="post" name="ca_frm" id="ca_frm">
<select  name="ca_id" id="ca_id" onChange="goCode(this.value);">
    <option value="" >1차분류</option>
<?php
$sql="select ca_id, ca_name from {$g5['g5_shop_category_table']}  where ca_use = '1'  and length(ca_id) = '2' order by ca_order, ca_id ";
$result=sql_query($sql);
while($row=sql_fetch_array($result)){
?>
    <option value="<?php echo $row['ca_id']?>"  <?php echo get_selected($row['ca_id'], $ca_id);?>><?php echo $row['ca_name']?></option>
<?php
}
?>    
</select>
<select  name="ca_id2" id="ca_id2" >
    <option value="" >2차분류</option>  
</select>
</form>
<script type="text/javascript">
<!--
function goCode(v){
        
    var url = '/shop/ajax.category.php';
    var params = $("#ca_frm").serializeArray();
    $.post(url, params, function(data){
        $("#ca_id2").html(data);
    });
}
//-->
</script>
<!-- shop category //-->

 

ajax.category.php  (/shop/ 폴더에 넣으세요.)


<?php
include_once('./_common.php');

$sql = " select ca_id, ca_name from {$g5['g5_shop_category_table']}
                where ca_use = '1' ";
if($ca_id)
        $sql .= " and ca_id like '$ca_id%' ";
$sql .= " and length(ca_id) = '4' order by ca_order, ca_id ";
$result=sql_query($sql);
?>
    <option value="" >2차분류</option> 
<?php
while($row=sql_fetch_array($result)){
?>
    <option value="<?php echo $row['ca_id']?>"  <?php echo get_selected($row['ca_id'], $ca_id2);?>><?php echo $row['ca_name']?></option>
<?php
}
?>    

 

로토루아님
추가로...
ca_id :eq(0)으로 처음에 지정되고
선택했을경우에는 선택된 옵션값으로 저장되는법은업을까요

지금 계속 ca_id:eq(1)번부터 셀렉트가 적용되사요..

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

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