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>