我的控制器中有此操作。

    public ActionResult Upload(HttpPostedFileBase fileData)
    {
        //code for uploading goes here.
        return View();
    }


是否可以使用$ .post或$ .Ajax访问此操作?
在我看来,我有这些代码。

<input type="file" name="fileData" id="fileData" multiple/>
<button>Upload</button>


首先,我正在尝试使用此代码

$("button").on("click",function(){
   $.post('@Url.Action' + $(".filedata").val(),function(data){
      console.log(data);
   });
});


但是,当我尝试在“上载”操作中断点时,“ filedata”变量具有空值。

我不知道出什么问题了。希望你能帮助我。

最佳答案

您需要有一个IFRAME,它将用于与文件一起发布信息。

像这样:

<iframe id="targetUpload" name="targetUpload"></iframe>


在表格中,将目标设置为iframe。

<form target="targetUpload" name="file" runat="server" method="post" id="file" enctype="multipart/form-data" action="@Url.Content("~/Controller/Action")">


还有一个提交按钮

<input type="Submit" value="Upload">

09-28 00:59