item.php
Copy
<tr>
<td>
<select class="cate_sel></select> // 기본분류
</td>
</tr>
<tr>
<td>
<select class="cate_sel></select> // 2차분류
</td>
</tr>
<tr>
<td>
<select class="cate_sel></select> // 3차분류
</td>
</tr>
ajax.php
Copy
<?php
$str = strlen($category_level);
if($str == 2){
$sql = "select ca_name
from g5_shop_category
where ca_id
like '{$category_level}%'
and length(ca_id) = 4
order by ca_id asc";
$str = 4;
} else if($str == 4){
$sql = "select ca_name
from g5_shop_category
where ca_id
like '{$category_level}%'
and length(ca_id) = 6
order by ca_id asc";
}
$result = sql_query($sql);
if($row = 1){
echo "<option>선택하세요</option>";
}
while($row=sql_fetch_array($result)){
echo "<option>".$row['ca_name']."</option>";
}
?>
script
Copy
$('.cate_sel').change(function(){
var code = $(this).val();
var next_sel = $(this).closest('tr').next().find('select');
$.ajax({
type : "POST",
url : "ajax.php",
data : {
category_level : code
},
success : function(){
$(next_sel).html(data)
},
});
});
안녕하세요. 도움을 받아서 여기까지는 했습니다.
기본분류 선택시 2차분류가 변하는거까지는 됐습니다.
그런데 2차분류를 선택했을때 3차는 아무 변화도 없고 에러도 뜨지가 않습니다.
컬럼 사이즈는 1차분류가 2, 2차분류가 4, 3차분류는 6 입니다.
혹시 스크립트에서 문제가 되는게 있는건가요...?
제가 공부해야 하는게 맞고 어제부터 계속 보고 있는데 답이 안나와서 답답합니다ㅠ
도움 한번만 더 부탁드립니다...
답변 1개 / 댓글 2개
채택된 답변
+20 포인트
이전 게시물에서 제가 드렸던 답변이 다 적용되지 않았네요. 'example.php 쿼리문에서 ca_id도 가져오도록 처리하고 ca_id를 option value에 포함시켜서 처리' 부분과 스크립트가 일부 누락됐습니다.
Copy
$.ajax({
type : "POST",
url : "ajax.php",
data : {
category_level : code
},
success : function(data){
$(next_sel).html(data);
}
});
Copy
if($str == 2){
$sql = "select ca_name, ca_id
from g5_shop_category
where ca_id
like '{$category_level}%'
and length(ca_id) = 4
order by ca_id asc";
$str = 4;
} else if($str == 4){
$sql = "select ca_name, ca_id
from g5_shop_category
where ca_id
like '{$category_level}%'
and length(ca_id) = 6
order by ca_id asc";
}
$result = sql_query($sql);
if($row = 1){
echo "<option>선택하세요</option>";
}
while($row=sql_fetch_array($result)){
echo "<option value='".$row['ca_id']."'>".$row['ca_name']."</option>";
}
위 내용을 반영하시면 될겁니다.
답변에 대한 댓글 2개
museplay
2019-04-18 (목) 14:58:38
SLOOP
2019-04-18 (목) 15:01:29
아뇨; 죄송하다고 하실 필요까진;; 모르면 질문을 남길 수 있는거니까요. 제대로 동작하니 다행이네요.
답변을 작성하려면 로그인이 필요합니다.
적용 잘 되고 보여주신 소스 보면서 공부할게요 감사합니다 ^^