使用包含类型文件输入的jQuery提交表单

时间:2015-09-25 16:57:50

标签: jquery asp.net-mvc razor

我正在尝试使用jQuery提交表单。该表单包含我使用this SO method伪装的文件上传输入,并使用this SO method自动提交。当我在控制器中检查_upload的参数时,type有一个值,但file为空。

我哪里错了?

查看:

    @using (Html.BeginForm("_upload", "Config", null, FormMethod.Post, new { @id = "form_" + Model.imageType }))
    {
        <label>
            <input id="file_@Model.imageType" type="file" name="file" required />
        </label>
            @Html.Hidden("type",Model.imageType)
    }
....
<script>
    $(function () {
        $('#file_@Model.imageType').change(function () {
            $('#form_@Model.imageType').submit();
        })
    })
</script>

控制器

    [HttpPost]
    public void _upload(HttpPostedFileBase file, string imageType) 
    { 
        //dostuff
    }

1 个答案:

答案 0 :(得分:0)

将您的剃须刀/表格更改为:

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