单击操作链接执行删除时执行确认弹出的最佳方式是什么?目前,当我按下删除操作链接时,它将直接删除。无论如何都要执行弹出确认框来删除? 谢谢!
我的观点:
<td>
@Html.ActionLink("Delete", "SURV_Question_Delete", "SURV_Question", new { Question_ID = Model[i].Question_ID }, null)
</td>
我的 Controller :
public ActionResult SURV_Question_Delete(int Question_ID)
{
var query = from r in db.SURV_Question_Ext_Model.ToList()
where r.Qext_Question_ID == Question_ID
select r;
foreach(var item in query)
{
db.SURV_Question_Ext_Model.Remove(item);
db.SaveChanges();
}
return RedirectToAction("SURV_Main_Edit", "SURV_Main", new { id = surveyId });
}
最佳答案
首先,您的删除操作应该是 POST,而不是 GET。您正在修改数据,并且不希望将其添加到浏览器历史记录中,或者允许在地址栏中输入网址(该项目可能已被删除)
将 html 更改为
@using (Html.BeginForm("SURV_Question_Delete", "SURV_Question", new { Question_ID = Model[i].Question_ID }))
{
@Html.AntiForgeryToken()
<input type="submit" value="delete" />
}
并使用 [HttpPost]
和 [ValidateAntiForgeryToken]
属性修饰该方法。
然后添加脚本
$('form').submit(function() {
// Modify the following to use you jquery-ui-dialog, but for testing purposes
if (!confirm("Are you sure want to delete record") {
return false; // cancel the submit if the user clicked the Cancel button
}
});
关于javascript - MVC 4操作链接弹出框确认删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31645966/