Вызов ActionResult из события OnChange [MVC4]

0

Это то, что я знаю, может быть сделано с помощью кодирования функции в JQuery или Javascript, но похоже, что такая вещь должна быть очень короткой, просто добавив правильную строку в HtmlAttributes HtmlHelper, учитывая, насколько гладкий MVC4,

Я, вероятно, пропустил что-то очень простое, поэтому, пожалуйста, простите меня, если я попрошу очевидного.

Возьмите эту ситуацию:

  1. У вас есть рабочее приложение MVC4, которое вы хотите изменить следующим образом

  2. Вы хотите вызвать ActionResult в контроллере, чтобы изменить содержимое страницы в ответ на пользователя, изменив значение флажка.

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

  4. Вы хотите передать модель ActionResult, точно так же, как это было бы с сообщением

  5. Изменения страницы не могут выполняться на стороне клиента, поскольку будет построена новая модель

Я попытался поместить $.Post в HtmlAttributes флажка, который управляет ActionResult просто отлично, но я не могу решить, как передать модель без кодирования функции. Принимая во внимание все остальное о MVC, он настроен на то, чтобы передавать модели очень интуитивно, мне кажется, что должен быть способ сделать это чисто... есть ли?

Большое спасибо

Теги:
razor
asp.net-mvc-4

1 ответ

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

Просто serialize() форму и отправляйте данные; все, что нужно сделать:

$.post('@Url.Action("Bar", "Foo")', 
    $('#myForm').serialize(), 
    function(data) { /*do something with the response*/ });

Ещё вопросы

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