Я использую диалог jquery ui и отображаю форму:
$("#detailView").dialog({
resizable: false,
height: 'auto',
autoOpen: false,
width: 1000,
modal: true,
buttons: {
'Close': function () {
closeModalPopup();
}
}
});
У меня есть кнопка внутри формы (не кнопки диалога). Когда я нажимаю эту кнопку, я отправляю ajax на сервер, используя следующий код:
$('.button').live('click', function () {
$.post('/MyController/Update', $("#myForm").serialize(), function (data) {
if (data == "Update Complete") {
closeModalPopup();
}
else {
$("#detailView").html(data);
}
}, "html");
});
Если сообщение успешно, я возвращаю «Обновление завершено», которое просто идет и закрывает диалоговое окно jquery UI.
проблема в том, что, когда это терпит неудачу, и у меня есть ошибка, я делаю это в моем действии контроллера:
if (!validationResult.IsValid)
{
validationResult.AddToModelState(ModelState, null);
return PartialView("DetailContent", hireRequest);
}
else
{
return Content("Update Complete");
}
this должен поразить случай "else" в обратном вызове javascript и показать новое содержимое в диалоговом окне, но, похоже, происходит то, что содержимое частичного результата отображается на полной базовой странице ( в отличие от модального диалога, где я хочу это
какие-либо предложения о том, что здесь происходит не так?