• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 delete할때 req.body._id가 NaN 이라고 나오면서 안됩니다.

delete할때 req.body._id가 NaN 이라고 나오면서 안됩니다.

3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 글쓴이
  • #43929

    choi2j
    참가자
    HTML
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="/public/style.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" />
    <title>MyMemo</title>
    </head>
    <body>
    <%- include('menu.html') %>
    <div class="wrapper">
    <p class="container-title">홈</p>
    <div class="container">
     
    <% for (var i = 0; i < memo.length; i++) { %>
    <span>
    <div class="memo">
    <div class="memo-sets">
    <button class="delete" data-id="<%= memo[i]._id %>"><i class="fa fa-trash"></i></button>
    " class="memo-edit"><i class="fa fa-edit"></i>
    </div>
    <p class="memo-title"><%= memo[i].title %></p>
    <p class="memo-date"><%= memo[i].date%></p>
    <p class="memo-content"><%= memo[i].content %></p>
    </div>
    </span>
    <% } %>
     
    <% if (memo.length == 0) {%>
    <p class="notice">메모를 작성해주세요!</p>
    <% } %>
     
    </div>
     
    </div>
    </body>
    <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
    <script>
    $('.delete').click((e) => {
     $.ajax({
     method: 'DELETE',
     url: '/delete',
     data: { _id : e.target.dataset.id }
    }).done((result) => {
     console.log("asdf");
    })
    })
    </script>
    </html>
    
    JS
    app.delete('/delete', (req,res) => {
     req.body = parseInt(req.body)
     db.collection('memo').deleteOne(req.body, (err, result) => {
     console.log(req.body)
     console.log('delete done.')
    })
     res.redirect('/')
    })
    
    
    위에 HTML 에서 e.target.dataset.id 를 받아서 delete 를 할 때, req.body에 들어간 _id 를 console.log 로 찍으면 
    NaN 으로 나오지만 에러는 안나고 delete가 안됩니다.
    delete done. 까지 출력 되지만 req 자체를 뜯어봐도 모르겠어서 질문 올립니다.
    
    
    
    
    		
    	
    #43933

    choi2j
    참가자
    _id 자체를 NaN 이라고 받는 것을  req 에서 확인할 수 있었습니다.
    #43998

    codingapple
    키 마스터
    .click((e) => {
    화살표함수말고 function으로 바꿉시다
3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠