Я просто играю с jQuery и MVC3 на данный момент, и мне интересно, как я могу представить форму, которая была динамически загружена в диалог jQueryUI?jQuery, MVC3: отправка частичной формы просмотра в модальном диалоговом окне
Мой код до сих пор состоит из ...
Javascript/JQuery
$(document).ready(function() {
$('.trigger').live('click', function (event) {
var id = $(this).attr('rel');
var dialogBox = $("<div>");
$(dialogBox).dialog({
autoOpen: false,
resizable: false,
title: 'Edit',
modal: true,
show: "blind",
hide: "blind",
open: function (event, ui) {
$(this).load("PartialEdit/" + id.toString());
}
}
});
$(dialogBox).dialog('open');
}) });
cshtml
<h2>Detail</h2><a href="#" class="trigger" rel="1">Open</a>
Контроллер
public ActionResult PartialEdit(int id)
{
return PartialView(new EditViewModel() { Name = id.ToString() });
}
[HttpPost]
public ActionResult PartialEdit(int id, FormCollection collection)
{
// What to put here???
}
Частичное Посмотреть
[email protected] (Html.BeginForm()){....Html.EditorFor(model => model.Name).....}....
Как вы можете видеть нагрузку() в JQuery вызывает PartialView имени PartialEdit.
Форма загружается просто отлично, но я застрял в разработке, как я действительно отправляю форму?
Вопросы
Как получить пользовательский интерфейс, чтобы отправить форму, и закрыть диалоговое окно? Что должно вернуть [HttpPost] PartialEdit?
На данный момент у меня есть кнопка отправки в частичном виде. При нажатии, форма отправляется, и браузер выполняет все, что возвращается [HttpPost] PartialEdit (в настоящее время отображается пустая страница).
Однако после отправки я хотел бы вместо этого инициировать событие на стороне клиента (возможно, обновление полной страницы или обновление частичной страницы в зависимости от используемого контекста). Я не уверен, с чего начать?
Кроме того, следует ли размещать кнопку отправки в PartialView или использовать кнопки в диалоговом окне jQuery-UI?
Любые предложения/указатели оценены.
Большое спасибо за ваше предложение. Проблема на данный момент состоит в том, что $ ('form', html) .submit (function() {...}); не работает. Должен ли мой частичный вид быть чем-то особенным? До сих пор его просто .. @using (Html.BeginForm()) { @ Html.ValidationSummary (правда)
<входной тип = "Отправить" значение = "Сохранить" />
} – ETFairfax@ETFairfax, не могли бы вы определить 'не работает'?Селектор '$ ('form', html)' возвращает элемент формы при входе в консоль FireBug? Выполняется ли обратный вызов 'submit'? –
Извините за смутное! Обратный вызов отправки не выполняется. $ ('form', html) возвращает длину: 0. – ETFairfax