J'utilise ce qui suit pour créer un formulaire pour télécharger des images sur un site mobile.
@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data" }))
Cependant, comme il utilise jQuery mobile, j'ai activé Ajax pour que la transition entre les pages soit agréable et fluide. Cela a causé le problème que mon formulaire ne téléchargera pas les images car vous ne pouvez pas faire de téléchargement de fichiers avec ajax. Je dois ajouter l'attribut data-ajax="false"
à ce formulaire pour lui permettre de télécharger mes fichiers.
Est-ce que quelqu'un sait comment je fais cela car j'ai essayé plusieurs variantes des éléments suivants, mais je n'ai pas pu le faire fonctionner:
@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data", "data-ajax" = "false" }))
L'astuce consiste à utiliser le trait de soulignement au lieu du trait d'union:
new { enctype = "multipart/form-data", data_ajax = "false" }
Le tiret n'est pas autorisé dans le cadre d'un identifiant c #. Le framework MVC traduit automatiquement le soulignement.
Vous pouvez utiliser une autre surcharge:
@using (Html.BeginForm("Form", "Quote", FormMethod.Post, new Dictionary<string, object> { { "enctype", "multipart/form-data" }, { "data-ajax", "false"} }))