Данные из пользовательского интерфейса в контроллер в ASP.NET MVC - PullRequest
1 голос
/ 24 сентября 2010

Не могли бы вы сказать мне лучший способ получить данные из пользовательского интерфейса для отправки их на контроллер. Что вы думаете о коде ниже? Есть ли другое решение без всего этого кода javascript / jquery / ajax?

Спасибо

function CustomerAddSave() {
    $('#btSave').bind('click', function (event) {
        $.ajax({
            type: "POST",
            url: "/Customer/CustomerSave",
            data: {
                id: $('#Id').val(),
                firstName: $('#FirstName').val(),
                lastName: $('#LastName').val(),
                isEnable: $('#IsEnable').attr('checked')
            },
            success: function (html) {
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) { }
        });
    });
}

Ответы [ 2 ]

2 голосов
/ 24 сентября 2010

Если ваша форма содержит допустимые поля ввода, вы можете использовать функцию serialize .

Это будет выглядеть так:

$.ajax({
  type: "POST",
  url: "/Customer/CustomerSave",
  data: {$("#myUberForm").serialize()},
});

Возможно также сериализовать что угодно (не только формы).

0 голосов
/ 24 сентября 2010

Если вы не хотите использовать JavaScript, вы можете использовать атрибут HttpPost в вашем классе контроллеров.

например

    public class HomeController
    {



    public ActionResult Contact()
    {

       return View()

    }


    [HttpPost]
    public ActionResult Contact(FormCollection values)
    {

     //Code to update here


    }


}

Любой запрос HTML Get будет вызывать стандартСвязаться () метод.Любое сообщение HTML будет вызывать метод Contact (), помеченный [HttpPost]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...