카테고리 작업 ajax 질문입니다..ㅠ
소파
2년 전
조회 1,938
</p>
<p>function setFilter(ca_id2){</p>
<p> if(ca_id2_array.includes(ca_id2)){</p>
<p> for(let i = 0; i < ca_id2_array.length; i++) {</p>
<p> if(ca_id2_array[i] === ca_id2) {</p>
<p> ca_id2_array.splice(i, 1);</p>
<p> i--;</p>
<p> //중분류 체크 해제시 소분류도 체크 해제</p>
<p> ?????</p>
<p> }</p>
<p> }</p>
<p> } else {</p>
<p> ca_id2_array.push(ca_id2);</p>
<p> }</p>
<p> </p>
<p> $.ajax({</p>
<p> url: "viewList.skin.php",</p>
<p> method: "POST",</p>
<p> dataType: "html",</p>
<p> data: {</p>
<p> ca_id: ca_id,</p>
<p> ca_id2: ca_id2_array,</p>
<p> ca_id3: ca_id3_array,</p>
<p> },</p>
<p> success: function(result) {</p>
<p> $("#list-wrap").html(result);</p>
<p> let atchLength = $("#list-wrap ul").children().length;</p>
<p> document.getElementById('list-count').innerHTML = atchLength;</p>
<p> },</p>
<p> error: function(xhr, status, error) {</p>
<p> console.error("Error processing form:", error);</p>
<p> }</p>
<p> });</p>
<p> </p>
<p> $('.category_li_3').each(function(){</p>
<p> if($(this).hasClass(ca_id2)){</p>
<p> if(ca_id2_array.includes(ca_id2)){</p>
<p> $(this).addClass('show');</p>
<p> }else{</p>
<p> $(this).removeClass('show');</p>
<p> }</p>
<p> }</p>
<p> });</p>
<p> }</p>
<p>
저 ??? 부분에서 들어갈 부분 코드를 어떻게 짜야할까요..ㅠ 머리를 짜내도 생각이 안나네요ㅜ
중분류 체크 해제시 하위에 나오는 소분류 값을 없애고싶은데.. 어떻게 해야할까요
댓글을 작성하려면 로그인이 필요합니다.
답변 3개
2년 전
const associated_ca_id3 = ca_id3_array.filter(ca_id3 => ca_id3.startsWith(ca_id2 + '_')); for (const ca_id3 of associated_ca_id3) { const index = ca_id3_array.indexOf(ca_id3); if (index !== -1) { ca_id3_array.splice(index, 1); } }
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
2년 전
위 코드에서 .category_li_3 클래스를 가지는 소분류 엘리먼트를 찾아서 해당 중분류가 체크 해제된 경우 show 클래스를 제거해서 숨김 처리하면 중분류 체크 해제 시 소분류도 함께 제거될겁니다.
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인