Je développe une application Web avec ASP.NET MVC 2 (.NET 4.0) et j'ai rencontré un problème difficile.Problème ASP.NET MVC utilisant la balise de soumission d'image dans Ajax.BeginForm
J'ai le code suivant dans une vue partielle:
<% using (Ajax.BeginForm("CompleteTask", "Agenda", new AjaxOptions {HttpMethod = "POST"})) { %>
<%: Html.EditorFor(x => x.Remarks) %>
<%: Html.HiddenFor(x => x.TaskId) %>
<%: Html.HiddenFor(x => x.AgendaId) %>
<% if (Model.RequiresApproval) { %>
<input type="image" name="Result" value="0" src="../../Content/Icons/thumbs_up.png" />
<input type="image" name="Result" value="1" src="../../Content/Icons/thumbs_down.png" />
<% } else { %>
<input type="image" name="Result" value="0" src="../../Content/Icons/accept.png" />
<% } %>
<% } %>
Les paramètres suivants sont affichés:
- AgendaId - 1046
- Remarques - échantillon remarque
- Résultat .x - 8
- Result.y-8
- TaskId - 0
- X-Requested-With - XMLHttpRequest
Je me attendais à ce qui suit:
- AgendaId - 1046
- Remarques - échantillon remarques
- Résultat - ou
- TaskId - 0
- X-Requested-With - XMLHttpRequest
Le code semble fonctionner très bien avec Html.BeginForm(), mais cela ne suffira pas que je dois gérer JSON résultats.
Quelqu'un peut-il faire la lumière sur ce qui ne va pas? Merci!
NOTE: Je devrais également noter que le passage à un attribut de type «submit» (à partir de l'attribut de type «image») semble également fonctionner, mais je dois utiliser une soumission d'image. Je pense que cela pourrait être un bogue dans le code JavaScript ASP.NET MVC ...
Je vous recommande d'utiliser jquery.form – Omu
jQuery est génial, mais je ne suis pas sûr de savoir comment obtenir la liaison automatique de modèle allant de cette route (sans écrire une bonne partie du code). –