MVC4 Jquery Popup

0

Я надеюсь получить некоторые советы о том, как наилучшим образом достичь следующего в.NET MVC 4.

У меня есть View со списком компаний на нем, простой для каждого через Enumeration, создающий таблицу html. каждая строка имеет кнопку или ссылку, при нажатии кнопки/ссылки открывается всплывающее окно. Внутри всплывающего окна будет частичное представление, содержащее форму для добавления нового пользователя, который отправляет свой собственный метод на другом контроллере.

то, что я хотел бы сделать, - это форма, которая должна находиться внутри всплывающего окна и не затрагивать главное окно, пока я не закрою всплывающее окно, а затем не обновляю родительское окно, но все же смогу представить нового пользователя и получить его сохранялся в всплывающем окне.

может ли кто-нибудь предложить какие-либо советы.

благодаря

Теги:
asp.net-mvc

1 ответ

0
Лучший ответ

Я думаю, что размещение формы в диалоговом окне с использованием 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);
}

Надеюсь, я правильно понял ваш вопрос!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню