-1

我正在尝试使用 jquery ajax 上传文件。我通过引用这个http://powerdotnetcore.com/asp-net-mvc/asp-net-mvc-simple-ajax-file-upload-using-jquery做了同样的事情。它适用于单个文件。

但是我必须上传多个文件,即使我有一对多关系的模型,我必须在上传文件之前保存模型值。

如果完成完整的回发,它会很好地工作。但是,如果我序列化表单,它就不起作用。

请帮助解决同样的问题。

有什么办法不使用任何插件来解决相同的问题吗?表单序列化有什么替代方法吗?

4

1 回答 1

-1

使用 formData 参数并通过它传递值。

var input = $('#input');
$('#fu-my-simple-upload').fileupload({
                url: '/File/UploadFile',
                dataType: 'json',
                formData : {id: input.val()},
                add: function (e, data) {
                    jqXHRData = data
                },
                done: function (event, data) {
                    if (data.result.isUploaded) {

                    }
                    else {

                    }
                    alert(data.result.message);
                },
                fail: function (event, data) {
                    if (data.files[0].error) {
                        alert(data.files[0].error);
                    }
                }
            });

也在控制器中添加这样的参数名称。

    public virtual ActionResult UploadFile(string id)
    {
     IEnumerable<HttpPostedFileBase> myFile = Request.Files["MyFile"];
     foreach(var file in myfile)
     {
     // save file one by one
     }        
     // now put your code
    }

在 html 输入字段中使用这个...

<input type="file" multiple="" name="myfile[]">

希望这可以帮助...

于 2013-10-18T12:16:10.550 回答