html - 如何将数据属性添加到 Html.BeginForm

标签 html asp.net-mvc razor html.beginform

我使用以下代码创建了一个表单,用于在移动网站上上传图片。

@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data" }))

然而,由于它使用的是 jQuery Mobile,因此我启用了 Ajax,以便页面之间的转换非常顺畅。这导致了我的表单无法上传图像的问题,因为您无法使用 ajax 上传文件。我需要将属性 data-ajax="false" 添加到此表单,以便它允许我的文件上传。

有谁知道我是怎么做到的,因为我尝试了以下的多种变体,但无法让它工作:

@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data", "data-ajax" = "false" }))

最佳答案

诀窍是使用下划线而不是连字符:

new { enctype = "multipart/form-data", data_ajax = "false" }

连字符不允许作为 c# 标识符的一部分。 MVC 框架自动翻译下划线。

关于html - 如何将数据属性添加到 Html.BeginForm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17811651/

相关文章:

asp.net-mvc - MVC 4 日期格式无法识别输入掩码

javascript - Bootstrap 4 下拉菜单不起作用

html - 如何为手机拨号屏幕创建href?

javascript - 视差实现指南像索尼网站

asp.net-mvc - 添加 @Html.CheckBoxFor 到电子邮件 asp.net mvc 4

asp.net-mvc - 将路线注册到 global.asax 的替代位置

javascript - 根据下拉框值统计MySql数据

c# - 如何实现类似SO的url重写

jquery - 我想在 razor 中循环遍历我的模型列表以填充 jquery 列

html - 如何在 Razor View 中将 div float 到两侧