3

我有一个Ajax.Actionlink用于删除确认消息,但是当单击“确定”时,确认消息将在第一次删除后显示两次。

基本上,当我删除第一条记录时,会显示确认消息。我单击确定,删除发生并且部分视图列表重新呈现。我单击另一条记录进行删除,确认消息显示。我点击“确定”,奇怪的事情发生了——记录被删除,但再次弹出确认消息。

@Ajax.ActionLink("Delete", 
                 "Delete", 
                 new { id = item.AnnouncementSID }, 
                 new AjaxOptions
                {
                  Confirm = "Are you sure you want to delete this announcement?",
                  HttpMethod = "POST",
                  UpdateTargetId = "divAnnounceList"
                }, new { @class = "actionLink" })

@Scripts.Render("~/Scripts/jquery.unobtrusive-ajax.min.js")
4

1 回答 1

3

为了澄清未来的搜索者:

这里的问题是您正在使用 AJAX 调用 Delete 操作,并且此操作正在执行重定向到 Announcements 操作。除了 Announcement 操作返回的是完整的 HTML 而不是部分的 HTML。因此,您将 jquery.unobtrusive-ajax.js 两次注入到您的 DOM 中。因此,您在第二次删除时获得 2 个确认,在第三次删除时获得 3 个确认,依此类推。

认为这就是正在发生的事情

于 2013-01-04T02:07:37.087 回答