Pet*_*ete 30 html asp.net-mvc html.beginform razor
我使用以下内容创建表单以在移动网站上传图像.
@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data" }))
Run Code Online (Sandbox Code Playgroud)
然而,由于它使用的是jQuery mobile,我启用了Ajax,因此页面之间的转换非常顺畅.这导致了我的表单无法上传图像的问题,因为您无法使用ajax进行文件上传.我需要将该属性添加data-ajax="false"到此表单,以便允许我上传文件.
有没有人知道我是如何做到这一点的,因为我尝试了以下的多种变体,但无法让它工作:
@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data", "data-ajax" = "false" }))
Run Code Online (Sandbox Code Playgroud)
Jan*_*Jan 63
诀窍是使用下划线而不是连字符:
new { enctype = "multipart/form-data", data_ajax = "false" }
Run Code Online (Sandbox Code Playgroud)
连字符不允许作为ac#标识符的一部分.MVC框架自动转换下划线.
YD1*_*D1m 16
您可以使用另一个重载:
@using (Html.BeginForm("Form", "Quote", FormMethod.Post, new Dictionary<string, object> { { "enctype", "multipart/form-data" }, { "data-ajax", "false"} }))
Run Code Online (Sandbox Code Playgroud)