이걸로 한 반나절 날려먹은것 같다.
리뷰 제목을 꽁! 누르면 각각의 리뷰 내용이 아코디언으로 내려와야하는데, 맨 처음에 있는 리뷰내용만 나오고 아래는 안나온다.....................
F12를 눌러서 확인해보면 제대로 리뷰내용들이 들어가있긴 했다.
그래서 javascript를 사용하기로 했다.
1. 각 리뷰 한 줄 당의 ID값을 부여한다. 부여하는 ID값 끝에 el태그로 가져온 ID값을 부여함.
// 클릭하면 리뷰내용 보여줄 리뷰 제목
<td class="reviewTitle rsub" id="rsub-${r.reviewNo}">
//리뷰 내용
<div class="review_content" id="review_content-${r.reviewNo}">
클릭 이벤트를 처음에는 index로 처리할 생각이었는데 서로 index가 반대로 부여되어있고, 제목 클릭시 리뷰 내용을 못찾고 계속 undefined가 나와버리는 문제가 발생했다...ㅠㅠ
그래서 리뷰 제목 id만 찾고
그 리뷰 제목id 라면? 부모를 타고 거슬러 올라가 부모의 형제인 리뷰내용을 보여주기로 맘먹었다! ^^
$("body").on("click", "[id^=rsub-]", function(event) {
var vId = this.id;
var v = document.getElementById(vId);
var vParent = v.parentNode.parentNode.parentNode.nextSibling.nextSibling;
console.log(vParent);
var pId = vParent.id;
var p = document.getElementById(pId);
console.log(p);
if(p.style.display === "block"){
p.style.display = "none";
}else {
p.style.display = "block";
}
});
click 이벤트도 앞에는 같고 뒤에 rsub - 다음 부분만 다 다르기 때문에 바디태그에 걸어서 했음.
부모 태그 찾으러 올라가는데 그냥 그 태그만 보고 올라가면 text라는 것을 보게되는데~~
어? 여기여야하는데지만 거기서 한번 더 가야 해당 태그가 나온다!!
'JAVASCRIPT' 카테고리의 다른 글
자바스크립트 Canvas를 활용해 동영상에서 이미지 추출해서 저장하기 (0) | 2023.02.10 |
---|---|
JavaScript. 전체선택/해제 체크박스. 하나라도 체크해제하면 전체선택 체크해제. 체크박스로 체크된 것을 아래 박스에 값 입력하기. (0) | 2021.03.30 |