37.5.16 따라하기 15: 게시판 삭제 페이지 구현

    1. DotNetNote 컨트롤러에는 삭제 페이지 관련 액션 메서드인 Delete 메서드가 구현되어 있다.

    2. Views 폴더의 DotNetNote 폴더에 Delete.cshtml이라는 이름으로 뷰 페이지를 생성하고, 삭제를 담당하는 뷰 페이지를 다음과 같이 작성한다.

    ▼  /Views/DotNetNote/Delete.cshtml

    @section Scripts {
      <!-- http://bootboxjs.com -->
      <script src=“~/lib/bootbox.js/bootbox.js”></script>
    }
    
    <script>
      function ConfirmDelete() {
          var varFlag = false;
          var txtId = document.getElementById(“Password”);
          if (txtId.value.length == 0) {
              bootbox.alert(“비밀번호를 입력하세요.”, function () { });
              txtId.focus();
              return false;
          }
          
          varFlag = false;
          bootbox.confirm(“현재 글을 삭제하시겠습니까?”, function (result) {
              if (result == true) {
                  document.forms[0].submit();
              }
          });
          return varFlag;
      }
    </script>
    
    <h2 style=“text-align:center;”>게시판</h2>
    <span style=“color:#ff0000;”>
      글 삭제 - 글을 삭제하려면 글 작성시에 기록하였던 비밀번호가 필요합니다.
    </span>
    <hr />
    <div style=“text-align: center;”>
      <form asp-action=“Delete” method=“post” onsubmit=“return ConfirmDelete();”>
          <span class=“text-danger”>@ViewBag.Id</span>번 글을 지우시겠습니까?
          <input type=“hidden” name=“id” id=“id” value=”@ViewBag.Id” />
          <br />
          비밀번호 :
          <input type=“password” name=“Password” id=“Password”
                  style=“width:120px;display:inline-block;” class=“form-control” />
          <input type=“submit” value=“지우기” class=“btn btn-danger”
                  style=“display:inline-block;” />
          <a asp-action=“Details” asp-route-id=”@ViewBag.Id”
              class=“btn btn-default”>취소</a>
          <br />
          <span class=“text-danger”>@ViewBag.Message</span>
          <br />
      </form>
    </div>
    

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.