У меня есть действие контроллера, которое вызывается JQuery ajax и, надеюсь, возвращает содержимое «Результаты» на запрашивающую страницу. До сих пор у меня есть ...Частичный вид не рендеринг через вызов ajax
Контроллер
public ActionResult DynCalc(resultsModel model){
...
//code that populates model - all working ok
...
if (Request.IsAjaxRequest())
{
return PartialView("results", model.Results);
}
else
{
return null; //Handle this later
}
}
Это передает обратно действительную модель. Вызывается из JavaScript:
$.ajax({
url: "/Test/DynCalc",
type: "POST",
data: $("#frmResults").serialize(), //This part works
dataType: "html",
success: function (result) {
$('#resultsSection').html(result);
$('#hide_panel a').flash("#111", 1000);
}
});
Sucess никогда не попал. Надеюсь, кто-то может просто сказать мне, что я уныл и пропуская что-то очевидное?
Результаты моего частичного просмотра - это всего лишь HTML-страница с javascript. Если я просто следующий
Hello world
в результатах зрения, то он работает нормально, с любым сценарием в это не
Я на правильном пути? Должен ли я менять тип возврата на контроллер? Или использовать JSON?
Я не размещал содержание страницы результатов, так как это не имеет значения, если это целый документ или просто <b>hi</b>
- он делает то же самое.
JQ Я предполагаю, что вы имеете в виду jquery? Я бы рекомендовал использовать Firefox с Firebug для его отладки. Вы можете пройти через него и посмотреть, что на самом деле происходит, и контролировать сетевой трафик. Также добавьте обработчик события сбоя/ошибки, так как если он не успеет его сбой/ошибка, и это также скажет вам что-то. –
@DaleBurrell Да, я также добавил обработчик Fail, и он был поражен каждый раз, когда 'results' был объектом, который я не могу проверить. – JustAnotherDeveloper
Вы не могли проверить его в Firebug? –