У меня странная проблема с частичным представлением, содержащим форму ajax.Он работает один раз, но после этого контроллер, по крайней мере, считает, что работает нормально, но содержимое частичного представления не обновляется, даже если данные, по крайней мере, в контроллере, фактически имеют обновленную модель.
Понятия не имею, что с этим делать.
Может ли это иметь какое-то отношение к div I, заменяющему данные вне частичного представления?
Должен ли я просто не использовать форму ajax и просто использовать jquery для выполнения запроса ajaxк контроллеру?
Итак, у меня есть эта форма в моем представлении (не имеет значения, является ли она моим или частичным представлением) и div, который содержит html из частичного
@using (Ajax.BeginForm("ChangePage", "Staging", null, new AjaxOptions { HttpMethod = "post", InsertionMode = InsertionMode.ReplaceWith, UpdateTargetId = "divResults", OnBegin = "showLoading", OnComplete = "hideLoading" }, new { id = "frmPage" }))
{
<input type="hidden" id="pageDir" name="pageDir" />
<input type="hidden" id="codeFilter" name="codeFilter" />
<input type="hidden" id="glauFilter" name="glauFilter" />
<input type="hidden" id="gacctnoFilter" name="gacctnoFilter" />
<input type="hidden" id="glcoFilter" name="glcoFilter" />
<input type="hidden" id="employeeFilter" name="employeeFilter" />
<input type="hidden" id="maxPages" name="maxPages" />
<input type="hidden" id="page" name="page" />
}
<div id="divResults" name="divResults">
@Html.Partial("~/Views/Staging/_stagingResults.cshtml", Model)
</div>
У меня есть JS, который отправляет форму в частичном представлении.Все это работает просто отлично.Я могу нажать кнопку, контроллер скрывается, генерирует мою новую модель, частичное представление генерирует HTML, и он отображается в DivResults, НО ТОЛЬКО в первый раз.
Любые другие изменения, сделанные на странице, делают все выше, но это не помещает новый HTML в divResults.В консоли разработчика Chrome я вижу новый запрос, возвращаемый с верным HTML, но он никогда не заменяется.