0

我将 DropzoneJS 与 MVC 一起使用。文件上传正常,但动作不会显示另一个视图,重定向到另一个动作后也不会显示另一个视图。只是停留在调用它的同一视图上。

行动 :

    [HttpPost]
    public ActionResult FileUpload(HttpPostedFileBase file)
    {
        if(file != null)
        {
            string ext = Path.GetExtension(file.FileName);

            if (file.ContentLength > 0 && ext == ".txt")
            {
                var fileName = Path.GetFileName(file.FileName);

                if (fileName != null)
                {
                    var path = Path.Combine(Server.MapPath("~/uploads"), fileName);
                    file.SaveAs(path);
                }
            }
        }

        return View("Report");   

        // This will redirect to action but will not display another view either:
        // return RedirectToAction("Report"); 
     }

视图调用自:

<div id="dropzone">
    <form action="/Dashboard/FileUpload" class="dropzone clickable" id="demo-upload" method="post" enctype="multipart/form-data">
    </form>
</div>
4

1 回答 1

2

如果您使用 dropzone 异步上传文件,您需要告诉浏览器进行重定向。通过对 MVC 控制器的异步调用,MVC 无法告诉浏览器更改页面。在 dropzone 上传带有完整事件的文件后,您可以在 javascript 中进行重定向:

myDropzone.on("complete", function(file) {
  window.location = "./Dashboard/Report/";
});
于 2013-06-13T18:36:01.570 回答