[asp.net-mvc] 확인 대화 상자로 ActionLink 삭제

ActionLinkASP.NET MVC를 사용하여 레코드를 삭제 하는 간단한 방법을 구현하려고합니다 . 이것이 내가 지금까지 가지고있는 것입니다.

<%= Html.ActionLink("Delete", 
                    "Delete", 
                    new { id = item.storyId, 
                          onclick = "return confirm('Are you sure?');" 
                        })%> 

그러나 확인 상자는 표시되지 않습니다. 분명히 뭔가 빠졌거나 링크를 잘못 만들었습니다. 누구든지 도울 수 있습니까?



답변

routeValues와 혼동하지 마십시오 htmlAttributes. 이 과부하를 원할 것입니다 .

<%= Html.ActionLink(
    "Delete", 
    "Delete", 
    new { id = item.storyId }, 
    new { onclick = "return confirm('Are you sure you wish to delete this article?');" }) 
%>


답변

그것들은 당신이 지나가는 경로들입니다

<%= Html.ActionLink("Delete", "Delete",
    new { id = item.storyId }, 
    new { onclick = "return confirm('Are you sure you wish to delete this article?');" })     %>

찾고있는 오버로드 된 메서드는 다음과 같습니다.

public static MvcHtmlString ActionLink(
    this HtmlHelper htmlHelper,
    string linkText,
    string actionName,
    Object routeValues,
    Object htmlAttributes
)

http://msdn.microsoft.com/en-us/library/dd492124.aspx


답변

<%= Html.ActionLink("Delete", "Delete",
    new { id = item.storyId }, 
    new { onclick = "return confirm('Are you sure you wish to delete this article?');" })     %>

위의 코드는 Html.ActionLink에서만 작동합니다.

에 대한

Ajax.ActionLink

다음 코드를 사용하십시오.

<%= Ajax.ActionLink(" ", "deleteMeeting", new { id = Model.eventID, subid = subItem.ID, fordate = forDate, forslot = forslot }, new AjaxOptions
                                            {
                                                Confirm = "Are you sure you wish to delete?",
                                                UpdateTargetId = "Appointments",
                                                HttpMethod = "Get",
                                                InsertionMode = InsertionMode.Replace,
                                                LoadingElementId = "div_loading"
                                            }, new { @class = "DeleteApointmentsforevent" })%>

‘확인’옵션은 자바 스크립트 확인 상자를 지정합니다.


답변

메시지와 함께 삭제 항목을 전달하여을 사용자 정의 할 수도 있습니다. 제 경우에는 MVC와 Razor를 사용하므로 다음과 같이 할 수 있습니다.

@Html.ActionLink("Delete", 
    "DeleteTag", new { id = t.IDTag }, 
    new { onclick = "return confirm('Do you really want to delete the tag " + @t.Tag + "?')" })


답변

이 시도 :

<button> @Html.ActionLink(" ", "DeletePhoto", "PhotoAndVideo", new { id = item.Id }, new { @class = "modal-link1", @OnClick = "return confirm('Are you sure you to delete this Record?');" })</button>


답변

webgrid 사용 하면 여기 에서 찾을 수 있으며 작업 링크는 다음과 같습니다.

여기에 이미지 설명 입력

    grid.Column(header: "Action", format: (item) => new HtmlString(
                     Html.ActionLink(" ", "Details", new { Id = item.Id }, new { @class = "glyphicon glyphicon-info-sign" }).ToString() + " | " +
                     Html.ActionLink(" ", "Edit", new { Id = item.Id }, new { @class = "glyphicon glyphicon-edit" }).ToString() + " | " +
                     Html.ActionLink(" ", "Delete", new { Id = item.Id }, new { onclick = "return confirm('Are you sure you wish to delete this property?');", @class = "glyphicon glyphicon-trash" }).ToString()
                )


답변

mozilla firefox에서 작동하는 삭제시 이미지 및 확인 포함

<button> @Html.ActionLink(" ", "action", "controller", new { id = item.Id }, new { @class = "modal-link1", @OnClick = "return confirm('Are you sure you to delete this Record?');" })</button>
<style>
a.modal-link{ background: URL(../../../../Content/Images/Delete.png) no-repeat center;
            display: block;
            height: 15px;
            width: 15px;

        }
</style>