Я надеюсь получить некоторые советы о том, как наилучшим образом достичь следующего в.NET MVC 4.
У меня есть View со списком компаний на нем, простой для каждого через Enumeration, создающий таблицу html. каждая строка имеет кнопку или ссылку, при нажатии кнопки/ссылки открывается всплывающее окно. Внутри всплывающего окна будет частичное представление, содержащее форму для добавления нового пользователя, который отправляет свой собственный метод на другом контроллере.
то, что я хотел бы сделать, - это форма, которая должна находиться внутри всплывающего окна и не затрагивать главное окно, пока я не закрою всплывающее окно, а затем не обновляю родительское окно, но все же смогу представить нового пользователя и получить его сохранялся в всплывающем окне.
может ли кто-нибудь предложить какие-либо советы.
благодаря
Я думаю, что размещение формы в диалоговом окне с использованием AJAX может быть хорошим решением.
Вы можете воспользоваться преимуществами сериализации данных значений формы со следующим javascript в jquery:
$("#submit-button").click(function (e) {
e.preventDefault();
var form = $("#dialog-form");
var form_collection = form.serialize();
$.post("/Controller/Action/", form_collection, function (data) {
if (data) {
$("#dialog").close();
} else {
alert("Something go wrong!");
}
});
});
И в контроллере:
[Authorize]
[AcceptVerbs(HttpVerbs.Post)]
public JsonResult Action(FormCollection form)
{
User newUser = new User();
newUser.Name = form["Name"];
newUser.Company = form["Company"];
newUser.Address = form["Address"];
dataBaseService.SaveOrUpdate(newUser);
return Json(new { response = true, userSaved = newUser }, JsonRequestBehavior.AllowGet);
}
Надеюсь, я правильно понял ваш вопрос!