J'ai un simple formulaire créé à l'aide d' 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" />
<% }%>
Le contrôleur est branché et renvoie une vue partielle qui met à jour l' DescriptionDiv
. Et tout cela fonctionne parfaitement.
Maintenant, je voudrais être en mesure de soumettre ce formulaire sans avoir le bouton envoyer (via un clic sur un lien ou sur une image ou quoi que ce soit). Malheureusement, ce petit jQuery extrait de ne pas faire le travail:
$('form#AjaxForm').submit();
Il ne soumettez le formulaire, mais n'en fait je suppose qu'il n'est pas surprenant) à un poste d'arrière et pas un Ajax un.
Par souci de simplicité, le ci-dessus jQuery est câblé comme ceci:
<a href="#" onclick="$('form#AjaxForm').submit(); return false;">submit</a>
Le onsubmit du formulaire est d'utiliser le Sys.Mvc.AsyncForm.handleSubmit() mais le jQuery soumettre semble passer à côté de cette.
PS. Je suis à la recherche d'une solution dans cette approche particulière. Je sais comment obtenir le même à l'aide d'une forme normale et le poster à l'aide d'AJAX+jQuery. Je suis intéressé par cette solution particulière si.