web-dev-qa-db-fra.com

Supprimer ActionLink avec le dialogue de confirmation

J'essaie d'implémenter une ActionLink simple qui supprimera des enregistrements à l'aide d'ASP.NET MVC. C'est ce que j'ai jusqu'ici: 

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

Cependant, il ne montre pas la boîte de confirmation. Clairement, il me manque quelque chose ou j'ai mal construit le lien. Quelqu'un peut-il aider?

92
Cameron

Ne confondez pas routeValues avec htmlAttributes. Vous voulez probablement cette surcharge :

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

Le code ci-dessus ne fonctionne que pour Html.ActionLink.

Pour 

Ajax.ActionLink

utilisez le code suivant:

<%= 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" })%>

L'option 'Confirmer' spécifie la boîte de confirmation javascript.

13
T Gupta

ce sont des routes que vous passez

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

La méthode surchargée que vous recherchez est la suivante:

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

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

13
hunter

Vous pouvez également personnaliser le en passant l'élément de suppression avec le message. Dans mon cas, en utilisant MVC et Razor, je pourrais donc faire ceci:

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

Essaye ça :

<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>
2
GirishBabuC

En utilisant webgrid vous pouvez le trouver ici , les liens d’action pourraient ressembler à ce qui suit.

 enter image description here

    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()
                )
2
Hedego

Avec image et confirmation lors de la suppression, ce qui fonctionne sur 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>
1
GirishBabuC

 enter image description here MVC5 avec dialogue de suppression & glyphicon. Peut travailler les versions précédentes.

@Html.Raw(HttpUtility.HtmlDecode(@Html.ActionLink(" ", "Action", "Controller", new { id = model.id }, new { @class = "glyphicon glyphicon-trash", @OnClick = "return confirm('Are you sure you to delete this Record?');" }).ToHtmlString()))
0
Terry H