0

我正在使用 C# 开发 ASP.net MVC 2.0 应用程序。

我正在使用 Ajax.beginForm() 发出回发/Ajax 请求。

在我的页面中,我有一个下拉和提交按钮。下拉列表包含状态为 0 的用户列表。

When ever a particular user is selected and clicked on submit and his status will updated to 1.

因此,在成功的 Ajax 请求之后,我正在调用回调函数以发出用户状态已成功更新的警报。

但是,问题是即使用户状态更新为 1,它仍然出现在下拉列表中..因为它是部分更新。

现在,我的问题是如何重新绑定下拉列表?请帮忙。

4

1 回答 1

1

您可以通过发出新的 ajax 请求来重新加载下拉列表,以便在成功发布后接收状态为 0 的当前用户。

或使用 jquery 从下拉列表中动态删除选定的用户。

或者您可以将您的 ajax 表单放在部分视图中并在 ajax 发布后重新渲染它,并完全更新您的 ajax 表单:

[HttpPost]
Public ActionResult Post(...)
{
//do somethings

return Partial("_YourAjaxFormPartialView");
}

并在您的 Ajax.BeginForm() 中,使用 AjaxOptions 指定要更新的区域:

<div id="formContainer">
@using (Ajax.BeginForm("PostAction", "Home", 
    new AjaxOptions() {
        UpdateTargetId = "formContainer",
        OnSuccess = "alert('success')"
    })) 
</div>
于 2013-10-24T16:46:29.400 回答