Отправка частичного представления внутри родительского представления MVC 3 с Razor

У меня есть три частичных представления, которые я загружаю в div на основе выбора переключателя с помощью jquery. Все работает нормально при загрузке и в формах, однако каждая частичная форма имеет кнопку отправки (нет в родительской форме). Я начинаю каждую частичную форму с:

    <div id="newTicketPartial">
    @using (Ajax.BeginForm("CreateNewTicket", "SubmitTicket", new AjaxOptions() { UpdateTargetId = "newTicketPartial", HttpMethod = "POST" }))

Проблема в том, что в этой форме, когда я заканчиваю ввод данных и нажимаю кнопку отправки, кажется, что эти формы пропускаются, а вместо этого используются родительские представления @ using Html.BeginForm Если я помещаю действие и контроллер в родительские формы BeginForm оно будет использовать это поле, иначе возникнет ошибка. Моя проблема в том, что даже если он использует путь POST родительских представлений, мой контроллер возвращает только частичное представление, которое я редактировал, что обновляет всю страницу. Мне нужно иметь возможность отправлять информацию из каждого частичного представления и обновлять только это частичное представление, а не всю страницу. Я открыт для предложений о том, как это можно сделать. Если потребуется больше кода, я отправлю больше.


person Cody    schedule 20.06.2013    source источник


Ответы (1)


Вложенные формы являются проблемой. Вы не должны вкладывать формы, иначе любые кнопки ниже по странице (даже те, которые сгенерированы частичными представлениями) вызовут POST родительскую форму.

person Chris Holmes    schedule 20.06.2013
comment
Это было то, о чем я подозревал, я решил добавить свои собственные кнопки отправки в каждое частичное представление, которое использует ajax для обновления своего частичного представления. - person Cody; 21.06.2013