1. html을 구성하는 단계에서 타임리프 문법(th:if)을 사용하려 시도함.
-> 타임리프 문법 적용 안됨
2. 자바스크립트 코드 사용
-> html구성 단계에서 js를 먹여보려 하였지만 적용되지 않음.
-> 필요한 값은 다 있는데 적용되지 않아 의아함
3. 화면단에 html코드가 반영되는 순간은 append 이후임을 인식함.
하여 appned(html) 코드 이후에 js로 처리
해결 완료
ajax로 append 처리한 html의 div에 클레스로 각각 값을 주어 고유 값 처리함-> 해당 클레스 hide()처리.
js
for (let review of data) {
let tempHtml = makeHtmlReview(review);
let userId = review["userId"];
let cafeReviewNumber = review["cafeReviewNumber"];
$('#review-list-container').append(tempHtml);
if (loginUserId !== userId){
$(`.delete${cafeReviewNumber}`).hide();
}
}
cafeDetail.html
loginUserId 선언. <- 컨트롤러에서 model로 심어놓은 값
<script th:inline="javascript">
let loginUserId = [[${userId}]];
</script>
각 버튼에 리뷰id를 부여하여 고유값으로 처리
<button onclick="deleteReview(${cafeReviewNumber})" class="delete${cafeReviewNumber}">삭제</button>
'프로그래밍 > JPA Project - sparta' 카테고리의 다른 글
[타임리프] onclick에 매개변수 보내기 (0) | 2022.07.18 |
---|---|
다중 클릭 방지 / 중복 요청 방지 (0) | 2022.07.17 |
s3 access denied 배포/s3이미지 삭제 에러 + 배포 설정 에러 ★★★★★ (0) | 2022.07.16 |
깃액션 배포 에러 - build 파일 인식 에러 (0) | 2022.07.15 |
EB - Database 연결 이슈 (Configuration validation exception: Invalid option value: '5.6' (Namespace: 'aws:rds:dbinstance', OptionName: 'DBEngineVersion'): Engine Version 5.6 not supported for mysql db) (0) | 2022.07.15 |