카테고리 없음

ajax 3일차 : 댓글 수정 //replyNO를 포함하며 id값 설정

나이많은 초보 2022. 10. 6. 11:32
//댓글목록 출력
	function getReplyList(){		
		var boardNo="${board.boardNo }";
		
		$.ajax({
			url:"/board/replyList.kh",
			data:{
				"boardNo":boardNo
			},
			type:"get",
			success:function(rList){
				var $tableBody=$("#rtb tbody");
				$tableBody.html('');  //댓글 List 누적되지 않게 초기화
				$("#rCount").text("댓글 갯수( " +rList.length+")");  //댓글 갯수구하기...
				if(rList !=null){
					for(var i in rList){
						var $tr=$("<tr>");
						var $rWriter=$("<td width='100'>").text(rList[i].replyWriter);
						var $rContent=$("<td>").text(rList[i].replyContents);
						var $rCreateDate=$("<td width='170'>").text(rList[i].rCreateDate);
						var $btnArea=$("<td width='90'>").append("<button><a href='javascript:void(0);' onclick='modifyView(this,\""+rList[i].replyContents+"\","+rList[i].replyNo+")'>수정</a></button>")
						                                  .append("<button><a href='javascript:void(0);' onclick='removeReplyAjax("+rList[i].replyNo+")'>삭제</a></button>");
						
						$tr.append($rWriter);
						$tr.append($rContent);
						$tr.append($rCreateDate);
						$tr.append($btnArea);
						$tableBody.append($tr);
						
					}
				}			
			},
			error:function(){
				alert("ajax 통신실패!관리자에게  문의하세요!!")
			}			
		});	
	}

댓글 목록 출력할때 리스트 출력했었고 

수정칸에 문구 변경한다.

.append("<button><a href='javascript:void(0);' onclick='modifyView(this,\""+rList[i].replyContents+"\","+rList[i].replyNo+")'>수정</a></button>")

//리플 목록띄우기
		function modifyView(obj, replyContents, replyNo){
			 event.preventDefault();      //링크따라 화면이동하는것을 막아준다.				
			 var $tr=$("<tr>");
			 $tr.append("<td colspan='3'><input type='text' size='50' id='replyContents"+replyNo+"' value='"+replyContents+"'></td>");
			 //문자임을 나타내주기 위해서 "+변수를 요기 안에다 넣어야 한다. +"
			 $tr.append("<td><button onclick='modifyReply(this,"+replyNo+");'>수정</button></td>");
													/*위에서 전달받은 replyNo 와 함수 호출할때 객체 값을 같이 전달함 */
			 console.log($tr[0]);
			 console.log(obj);  //obj는  this를 통해 이벤트가 발생한 태그 this 가 obj로 넘어와서 
			 $(obj).parent().parent().after($tr);  // $tr변수의 값을 함수가 실행된 쪽으로 추가해준다.		
		}

수정버튼을 누르면 수정할수 있는 댓글 칸이 나오는 자바스크립트

function modifyReply(obj, rNo){         //(obj,rNo,bNo,page){			
			var replyContents=$('#replyContents'+rNo).val();				
			// 원래는 게시글과 댓글 넘버가 같이 가야하지만 여기서는 이미 게시글의넘버가 식별이 되어서 댓글의 넘버만 받는다.
			/*form 태그 안 만들고 ajax으로 변경한다.*/
			$.ajax({
				url:"/board/replyModify.kh",
				data:{
					"replyNo" :rNo,
					"replyContents" : replyContents				
				},
				type:"post",
				success : function(data){
					if(data=="success"){
						getReplyList();						
					}else{
						alert("댓글 수정실패");
					};
				},
				error: function(){
					alert("error");
				}
				
			});
			
		}

$tr.append("<td colspan='3'><input type='text' size='50' id='replyContents"+replyNo+"' //append에서 변동하는 replyNo값을 포함해서 id주는 방법

var replyContents=$('#replyContents'+rNo).val();   

// 그걸 읽어 오는 방법