删除行ajax MVC 5

时间:2016-06-23 07:03:48

标签: ajax asp.net-mvc

我需要更新在部分视图中调用的webgrid。

我通过Ajax.ActionLink

加载我的部分视图
 @Ajax.ActionLink(" ", "ShowAssistants", "Assistants", new { assistusername = item.AssistantUserName }, new AjaxOptions() { UpdateTargetId = "add_research" }, new { @class = "glyphicon glyphicon-link" })

在这个局部视图中,我有一个webgrid,其中一列有删除操作方法

 @Html.Raw("<a data-modal='' href='/Assistants/DeleteAssistant/" + item.ID + "' id='" + item.ID + "' title='Delete'> <span class='glyphicon glyphicon-trash'> </span> </a>")

我调用一个模态,只询问用户是否要删除该行。按下“是”按钮后,记录已被删除,但部分视图和webgrid未更新。

ajax代码

function bindForm(dialog) {
$('form', dialog).submit(function () {
    $('#progress').show();
    $.ajax({
        url: this.action,
        type: this.method,
        data: $(this).serialize(),
        cache: false,
        success: function (result) {
            if (result.success) {
                $('#myModal').modal('hide');
                $('#progress').hide();
               //location.reload();

                $("#add_research").load('@Url.Action("ShowAssistants", "Assistants")');

            } else {
                $('#progress').hide();
                $('#myModalContent').html(result);
                bindForm();
            }
        }
    });
    return false;
});
  }

如果我删除了   $("#add_research").load('@Url.Action("ShowAssistants", "Assistants")');

并离开location.reload();

刷新页面但部分视图正在消失,这是正常的。用户必须单击Ajax.ActionLink才能再次查看记录。 有关如何在页面中保留局部视图和升级webgrid的任何想法? 谢谢!

1 个答案:

答案 0 :(得分:1)

我使用像这样的ajax加载函数,它成功加载了部分视图:

$("#add_research").load('/Assistants/ShowAssistants');