【发布时间】:2013-11-29 09:58:30
【问题描述】:
刚开始使用 Dropzone,到目前为止它看起来非常好。我有处理上传本身的后端功能,但是在调试时我注意到该操作永远不会受到影响。这是因为我的表单包含一个隐藏输入以传递所需的 id(用于执行上传的操作)。 这是我的表格:
@using (Html.BeginForm("UploadFile", "UnitSummary", FormMethod.Post, new
{
enctype = "multipart/form-data",
id = "imgUpload",
@class = "dropzone"
}))
{
<div class="fallback">
<input name="file" type="file" multiple />
<input type="submit" value="Upload" />
<input type="hidden" name="unitId" value="@Model.ViewUnitContract.Id"/>
</div>
}
JS:
<script type="text/javascript">
$(document).ready(function () {
// Dropzone
Dropzone.options.imgUpload = {
paramName: "file", // Must match the name of the HttpPostedFileBase argument that the Upload action expects.
acceptedFiles: "image/*" // Accept images only
};
});
</script>
这是我的行动:
[HttpPost]
public ActionResult UploadFile(HttpPostedFileBase file, int unitId)
{
...
}
现在,如果我删除“int unitId”参数,则会触发此操作。唯一的问题是我实际上需要那个 id :)
【问题讨论】:
-
您是否尝试过只使用普通的
<form>标记并将unitId 作为查询字符串附加?<form action="/UnitSummary/UploadFile?unitId=@Model.ViewUnitContract.Id" method="post"></form> -
感谢@RGraham!这样可行! :) 随意添加它作为我接受的答案!
-
如果您自己从用于解决问题的代码中添加答案会更好。也为自己赢得一个徽章:)
标签: jquery asp.net asp.net-mvc dropzone.js