2010-09-24 5 views
1

Не могли бы вы рассказать мне лучший способ получить данные из пользовательского интерфейса, чтобы отправить их на контроллер. Как вы думаете, какой код ниже? Есть ли еще одно решение без всего этого javascript/jquery/ajax-кода?Данные от пользовательского интерфейса к контроллеру в ASP.NET MVC

Спасибо,

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) { } 
     }); 
    }); 
} 

ответ

0

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

например

public class HomeController 
    { 



    public ActionResult Contact() 
    { 

     return View() 

    } 


    [HttpPost] 
    public ActionResult Contact(FormCollection values) 
    { 

    //Code to update here 


    } 


} 

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

2

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

Это будет выглядеть следующим образом:

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

Можно serialize anything тоже (не только формы).

Смежные вопросы