无法使用formdata Asp.net-mvc上传图片

时间:2015-04-13 22:27:20

标签: asp.net-mvc file input image-uploading form-data

我无法使用formdata上传图片。这是我之前的代码,它工作正常(这只是表单的一部分):

<div class="fileinput fileinput-new" data-provides="fileinput" style="width: 100%;">
                                                            <div class="fileinput-preview" data-trigger="fileinput" style="margin: 10px 0px;"></div>
                                                            <div>
                                                                <span class="btn btn-default btn-file">              
                                                                    <input type="file" id="filePicture" name="filePicture">
                                                                </span>

                                                            </div>
                                                        </div>

这是我的Ajax电话:

$(document).on("click", "#sledBuckSaveBtn", function() {
    event.preventDefault();
    event.stopPropagation();

    var fd = new FormData(document.getElementById("saveSledBuckForm1"));

    $.ajax({
        type: "POST",
        url: "/SledBuck/EditFromSledTestDetails", //url,
        data: fd,

        processData: false, // tell jQuery not to process the data
        contentType: false,
        success: function (result) {

            var title = "Error", msgtype = "error";
            if (result) {
                title = "Success";
                msgtype = "success";

            }

            document.location.reload();

        }
    });
});

但我的要求已经改变,我需要使用Krajee插件来创建输入类型: 这是我的新代码:

  <div class="col-md-9">                                                                                                            
<input id="input-@Model.PictureIdList[i]" type="file" class="file" data-show-upload="false" data-show-caption="true" data-input-id="@Model.PictureIdList[i]">

</div>

我面临的问题是什么。我认为原因是我可能需要为Krajee插件进行配置,但我不确定。有什么建议吗?

1 个答案:

答案 0 :(得分:3)

我刚刚找到答案。我缺少文件输入的名称。就这样做,文件将被重新调整:

<input id="input-@Model.PictureIdList[i]" name= "fileInput" type="file" class="file" data-show-upload="false" data-show-caption="true" data-input-id="@Model.PictureIdList[i]">