Удалить ActionLink с помощью диалогового окна подтверждения
Я пытаюсь реализовать простой ActionLink
, который удалит записи с помощью ASP.NET MVC. Это то, что у меня есть до сих пор:
<%= Html.ActionLink("Delete",
"Delete",
new { id = item.storyId,
onclick = "return confirm('Are you sure?');"
})%>
Однако он не показывает окно подтверждения. Ясно, что я что-то упустил или неправильно построил ссылку. Может ли кто-нибудь помочь?
Ответы
Ответ 1
Не путайте routeValues
с htmlAttributes
. Вероятно, вы хотите эту перегрузку:
<%= Html.ActionLink(
"Delete",
"Delete",
new { id = item.storyId },
new { onclick = "return confirm('Are you sure you wish to delete this article?');" })
%>
Ответ 2
это маршруты, которые вы проходите в
<%= 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
Ответ 3
<%= 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" })%>
Параметр "Подтвердить" указывает флажок подтверждения javascript.
Ответ 4
Вы также можете настроить, передав элемент удаления вместе с сообщением.
В моем случае с использованием MVC и Razor, поэтому я мог бы сделать это:
@Html.ActionLink("Delete",
"DeleteTag", new { id = t.IDTag },
new { onclick = "return confirm('Do you really want to delete the tag " + @t.Tag + "?')" })
Ответ 5
Попробуйте следующее:
<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>
Ответ 6
С помощью 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()
)
Ответ 7
С изображением и подтверждением удаления, которое работает на 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>
Ответ 8
MVC5 с диалогом удаления и глификом. Могут работать предыдущие версии.
@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()))
Ответ 9
Любое событие click before before для обновления/редактирования/удаления записей предупреждает пользователя, и если "Ok" переходит к действию, то "cancel" остается неизменным. Для этого кода не нужно править отдельный код java script. он работает для меня
<a asp-action="Delete" asp-route-ID="@Item.ArtistID" onclick = "return confirm('Are you sure you wish to remove this Artist?');">Delete</a>
Ответ 10
Вы также можете попробовать это для Html.ActionLink DeleteId