jquery – .NET MVC Ajax Form保留旧的输入值 – 如何更新模型的值?

前端之家收集整理的这篇文章主要介绍了jquery – .NET MVC Ajax Form保留旧的输入值 – 如何更新模型的值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
除了一个警告之外,我在MVC3应用程序中有一个正常工作的ajax表单.提交表单并获得结果后,即使传入的模型具有不同的输入值(下例中的金额),旧值仍会显示在屏幕上.我将此归因于DOM中保存的值并覆盖/阻止模型中的新值.有多种方法可以通过在其中一个表单事件上运行 javascript函数解决此问题.

我想获得有关处理这种情况的最佳方法的反馈,最好是原生于MVC和没有javascript.以下是代码段:

父视图:

<div id="MyContainder">
    @Html.Partial("MyPartialView",ClassContainingAmountProperty)
</div>

部分视图:

@using (Ajax.BeginForm(actionName: "myaction",ajaxOptions: new AjaxOptions() UpdateTargetId = "MyContainder"})
      @Html.EditorFor(x => x.Amount)
      <input type="submit" value="Save" />
)

调节器

myModel.Amount = SomeNewNumber;
return PartialView(myModel); //same partial view returned but with new amount

解决方法

我一问这个问题就找到了答案!
ASP.NET MVC 3 Ajax.BeginForm and Html.TextBoxFor does not reflect changes done on the server

你必须打电话

ModelState.Clear();

在返回局部视图之前的动作内部

猜你在找的jQuery相关文章