У меня есть правильно работающая форма ajax в моем приложении MVC3 за исключением одного предупреждения. После того как я отправил форму и получил результат, даже если переданная модель имеет другое значение для ввода (сумма в примере ниже), старое значение все еще отображается на экране. Я приписываю это значению, которое сохраняется в 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