103 votes

Supprimer l'ActionLink avec un dialogue de confirmation

J'essaie d'implémenter une simple ActionLink qui supprimera les enregistrements en utilisant ASP.NET MVC. Voici ce que j'ai fait jusqu'à présent :

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

Cependant, la boîte de confirmation ne s'affiche pas. Il est clair qu'il me manque quelque chose ou que j'ai mal construit le lien. Quelqu'un peut-il m'aider ?

3voto

Hedego Points 96

Utilisation de 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()
                )

1voto

GirishBabuC Points 454

Avec image et confirmation sur la suppression, 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>

1voto

Antony D Points 419

Je voulais la même chose : un bouton de suppression sur ma vue Détails. J'ai finalement réalisé que j'avais besoin de poster à partir de cette vue :

@using (Html.BeginForm())
        {
            @Html.AntiForgeryToken()
            @Html.HiddenFor(model => model.Id)
            @Html.ActionLink("Edit", "Edit", new { id = Model.Id }, new { @class = "btn btn-primary", @style="margin-right:30px" })

            <input type="submit" value="Delete" class="btn btn-danger" onclick="return confirm('Are you sure you want to delete this record?');" />
        }

Et, dans le contrôleur :

 // this action deletes record - called from the Delete button on Details view
    [HttpPost]
    public ActionResult Details(MainPlus mainPlus)
    {
        if (mainPlus != null)
        {
            try
            {
                using (IDbConnection db = new SqlConnection(PCALConn))
                {
                    var result = db.Execute("DELETE PCAL.Main WHERE Id = @Id", new { Id = mainPlus.Id });
                }
                return RedirectToAction("Calls");
            } etc

0voto

Terry H Points 195

enter image description here MVC5 avec dialogue de suppression et glyphicon. Peut fonctionner avec 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()))

-1voto

Seeni Abirami Points 9

Tout événement de clic avant pour la mise à jour / modification / suppression des enregistrements boîte de message alerte l'utilisateur et si "Ok" procéder pour l'action sinon "annuler" rester inchangé. Pour ce code, il n'est pas nécessaire de séparer le code java script. Cela fonctionne pour moi.

<a asp-action="Delete" asp-route-ID="@Item.ArtistID" onclick = "return confirm('Are you sure you wish to remove this Artist?');">Delete</a>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X