У меня есть простая форма, созданная с помощью Ajax.BeginForm
:
<% using (Ajax.BeginForm("Update", "Description", new { id = Model.Id },
new AjaxOptions
{
UpdateTargetId = "DescriptionDiv",
HttpMethod = "post"
},new {id ='AjaxForm' })) {%>
Description:
<%= Html.TextBox("Description", Model.Description) %><br />
<input type="submit" value="save" />
<% }%>
Контроллер подключен и возвращает частичное представление, которое обновляет DescriptionDiv
. И все это работает аккуратно.
Теперь я хотел бы иметь возможность отправить эту форму без кнопки отправки (через клик по ссылке или на изображении или что-то еще). К сожалению, этот небольшой фрагмент jQuery не выполняет эту работу:
$('form#AjaxForm').submit();
Он представляет форму, но делает (я полагаю, не удивительно) регулярный пост-назад, а не Ajax.
Для простоты вышеуказанный jQuery подключается следующим образом:
<a href="#" onclick="$('form#AjaxForm').submit(); return false;">submit</a>
В форме onsubmit используется Sys.Mvc.AsyncForm.handleSubmit(), но представляется, что комментарий jQuery обходит это.
PS. Я ищу решение в этом конкретном подходе. Я знаю, как добиться того же, используя обычную форму и опубликовать ее с помощью AJAX + jQuery. Меня интересует именно это решение.