onclick 질문입니다.
본문
먼저 질문을 재등록한 점 죄송합니다.
<?php
$sql = " select * from g5s_BigDiv where bo_table = 'Document' order by BigDivOrder asc ";
$result = sql_query($sql);
//1단분류 쿼리
for($i=0; $row=sql_fetch_array($result); $i++) { //while을 사용해도 상관없음.
$j = $i +1;
$k = $i +1;
echo "<div class='Big' onclick='cate($row[BigDivNo])'>";
echo $row['BigDivName'];
$sql2 = "select * from g5s_MediumDiv where BigDivNo = '{$row['BigDivNo']}' order by MediumDivOrder asc";
$result2 = sql_query($sql2);
echo "</div>";
//2단 분류 쿼리
for($j=0; $row2=sql_fetch_array($result2); $j++){
echo "<div class='medium".$row['BigDivNo']." sub' onclick='nate(row2['MediumDivNo'])'>";
//2단계 카테고리 출력
echo "<a>".$row2['MediumDivName']."[$row1[medium_cnt]]</a>";
echo "</div>";
//3번째 카테고리 분류
$sql3 = "select * from ".$g5['write_prefix'].$bo_table." where wr_3='{$row2['MediumDivNo']}'";
$result3 = sql_query($sql3);
for($j=0; $row3=sql_fetch_array($result3); $j++){
echo "<div style=' font-size:16px; position : relative; padding-left:70px;'
<a>".$row3['wr_subject']."</a>
</div>";
}
}
}
이렇게 2단분류 설정을 했습니다.
위의 분홍색으로 색을 칠한 첫번째 div에서는 onclick가 실행이 됩니다.
그런데 밑의 두번째 분홍색을 칠한 div에서는 onclick를 어떤방식으로 써도 먹히질않습니다.
중복되는 부분이 없는것 같은데 도대체 왜 두번째 분홍색 div에 onclick가 안먹힐까요ㅠㅠㅠ
계속 해봤는데 되질않아서 문의를 드립니다.
용도는 각 1단 2단 div를 onclick을 넣어서 클릭을 하였을때 해당 하위단계의 카테고리들이 토글이
되는 형식으로 할려고 생각중입니다.
답변 3
1단은
onclick='cate
에서 함수가 cate 인데 2단에서는 nate 이네요
nate 라는 함수를 별도로 만드신건가요? 아니면 단수 오타인가요?
onclick='nate
단수 오타라면
onclick='cate
로 하면 작동하지 않을까 싶네요.
크롬에서 콘솔을 보시거나 익스에서는 설정 > 인터넷옵션 > 고급 > 모든스크립트 관련 오류표시
하시면 클릭시 오류를 알려줄것입니다.
위에 소스만 봐서는 정확한 이유를 알수 없을거 가텐요.
onclick='nate(row2['MediumDivNo'])'>";
이 부분에 보면은 row2['MediumDivNo'] 이부분이 일단 배열이 아니에요
$ 표시가 빠져 있고 따옴표 부분에 문제 있어 보입니다 .
echo "<div class='medium" . $row['BigDivNo'] . " sub' onclick=\"nate('{$row2['MediumDivNo']}')\">";