2012-02-20 47 views
15

我需要在我的项目ASP .NET MVC3 jQuery的文件上传插件来实现:示例项目插件jQuery的文件上传插件来实现

http://blueimp.github.com/jQuery-File-Upload/

我一直在谷歌搜索和我的天堂” t找到了一个完整的项目,只有部分代码。我不知道如何实现它。

有人可以帮助我吗?有人可以告诉我在哪里可以下载一个示例项目或代码?

+0

看看Telerik MVC上传组件http://demos.telerik.com/aspnet-mvc/upload它有很好的记录,当然,它的工作。 Telerik MVC控件是开源的。 – Azargoth 2012-02-20 13:26:55

+0

非常感谢。我会查一下! – rspaz16 2012-02-20 15:28:32

回答

46

您是否阅读过您尝试使用的插件的documentation?你尝试过basic plugin functionality吗?您是否尝试使用默认模板在Visual Studio中创建新的ASP.NET MVC 3应用程序?

你尝试写一个简单的控制器:

public class HomeController : Controller 
{ 
    public ActionResult Index() 
    { 
     return View(); 
    } 

    [HttpPost] 
    public ActionResult Index(IEnumerable<HttpPostedFileBase> files) 
    { 
     foreach (var file in files) 
     { 
      var filename = Path.Combine(Server.MapPath("~/App_Data"), file.FileName); 
      file.SaveAs(filename); 
     } 
     return Json(files.Select(x => new { name = x.FileName })); 
    } 
} 

和相应的视图:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script src="@Url.Content("~/Scripts/blueimp/js/vendor/jquery.ui.widget.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/blueimp/js/jquery.iframe-transport.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/blueimp/js/jquery.fileupload.js")" type="text/javascript"></script> 

<script type="text/javascript"> 
    $(function() { 
     $('#fileupload').fileupload({ 
      dataType: 'json', 
      url: '@Url.Action("index")', 
      done: function (e, data) { 
       $.each(data.result, function (index, file) { 
        $('<p/>').text(file.name).appendTo(document.body); 
       }); 
      } 
     }); 
    }); 
</script> 

<input id="fileupload" type="file" name="files" multiple="multiple"/> 

如果你还没有,我请你这样做。

+0

我已阅读文档,但有许多例子以不同的方式工作。为此,我需要一个清晰的例子来开始。谢谢@darin – rspaz16 2012-02-21 15:37:25

+0

@Darin Dimitrov:不要劫持这个线程,但是你能否在类似的线程http://bit.ly/HMkiWx上提供一些关于路由回发的指导?任何信息,将不胜感激。 – JaJ 2012-04-03 04:08:05

+3

18.168答案截至目前。你一定是在开玩笑,我的意思是,你必须克隆自己在做沉重的举动......你靠近Skeet。 :D hehehe。再次感谢Darin为我提供了难以置信的帮助。 – 2013-02-06 22:28:06