我有一个索引页面将数据库中的对象呈现为树视图,每个项目都有一个链接href =“/ MessageGroupType / Edit / 1002,它进行Ajax调用以在DIV中显示部分视图。
在局部视图中有一个删除按钮,它会调用我的控制器来删除该项目。
但是,我会检查以确保项目可以删除,如果项目无法删除,那么我希望弹出窗口显示在编辑表单上,告诉用户他们无法删除此记录。
在我的编辑部分视图中,我有以下代码
<asp:PlaceHolder runat="server">
<script src="<%= Url.Content("../../Scripts/JQuery/jquery-1.4.1.min.js") %>" type="text/javascript">
</script>
</asp:PlaceHolder>
<script type="text/javascript" >
$(function() {
$("#dialog").dialog();
});
</script>
<% if (Boolean.Parse(ViewData["DisplayWindow"].ToString())){%>
<div id="dialog" title="Cannot Delete Message Group Type">
<p>This Mesage group Type Cannot be deleted as is linked to other message group Types </p>
</div>
<% }%>
所以我的主要问题是
干杯
答案 0 :(得分:1)
在树状视图中,您可以在Ajax.ActionLink
中添加OnFailure
AjaxOptions
个$("#dialog").dialog();
选项,指向Response.StatusCode = (int)HttpStatusCode.BadRequest;
在您的控制器中,如果用户无法删除记录,则会将错误的请求代码(OnFailure
)与您的HttpResponse相关联,因此将调用您的OnSuccess
函数(并显示您的弹出窗口)。< / p>
如果记录已被删除,请不要忘记将{{1}}函数与Ajax.ActionLink相关联