Spring 게시판 만들기(25)
댓글기능 4
삭제버튼클릭시
<script>
// 댓글목록에서 삭제버튼 클릭시
$("#replyList").on("click", "input[name='btnModalDelete']", function(){
// console.log("클릭");
// 현재 선택된 댓글 내용을 읽어와서, 모달대화상자에 보여준다
let rno = $(this).parents("div.box-body").find("input[name='rno']").val();
let replyer = $(this).parents("div.box-body").find("input[name='replyer']").val();
let reply = $(this).parents("div.box-body").find("textarea[name='reply']").val();
let replydate = $(this).parents("div.box-body").find("span").html();
// console.log(rno);
// console.log(replyer);
// console.log(reply);
// console.log(replydate);
// Modal Dialog의 내용물 수정
$("#replyTitle").html("Delete Reply");
$("#rno").val(rno);
$("#replyer").val(replyer);
$("#reply").val(reply);
$(".btnModal").hide(); // 모달대화상자의 3개버튼을 모두 보이지 않게
$("#btn_replyDelete").show();
$("#replyModal").modal('show');
});
</script>
삭제버튼 클릭
<script>
// 모달 대화 상자에서 삭제버튼 클릭
$("#btn_replyDelete").on("click", function(){
let rno = $("#rno").val(); //댓글번호
$.ajax({
type: 'delete',
url: '/replies/delete/' + rno,
headers: {
"Content-Type" : "application/json", "X-HTTP-Method-Override" : "DELETE"
},
dataType: 'text', // 매핑주소의 리턴값 타입
// data: replyStr,
success: function(result) {
if(result == "success"){
alert("댓글 데이타 삭제 성공");
$("#replyModal").modal('hide');
let url = "/replies/pages/" + bno + "/" + replyPage + ".json"; // 댓글목록및 페이징정보 요청주소
getPage(url);
}
}
});
});
</script>
컨트롤러
@DeleteMapping(value = "/delete/{rno}")
public ResponseEntity<String> delete(@PathVariable("rno") Long rno){
ResponseEntity<String> entity = null;
service.deleteReply(rno);
entity = new ResponseEntity<String>("success", HttpStatus.OK);
return entity;
}
xml
<delete id="delete">
delete from tbl_reply where rno = #{rno}
</delete>
mapper
int delete(Long rno);
service
int deleteReply(Long rno);
serviceImpl
@Override
public int deleteReply(Long rno) {
// TODO Auto-generated method stub
return mapper.delete(rno);
}
댓글남기기