如何使用 JavaScript/jQuery 从 ASP.NET Web 窗体的 GridView 内部同时上传多个文件?
Posted
技术标签:
【中文标题】如何使用 JavaScript/jQuery 从 ASP.NET Web 窗体的 GridView 内部同时上传多个文件?【英文标题】:How to upload multiple files simultaneously from inside GridView of ASP.NET Web Forms using JavaScript/jQuery? 【发布时间】:2020-01-27 00:02:54 【问题描述】:我有一个 GridView 和其中的一些列。我在 GridView 中创建了一个模板列,并在其中放置了一个文件上传控件。
<asp:GridView ID="GridView1" runat="server">
<Columns>
<ItemTemplate>
<asp:FileUpload id="FileUploadControl" runat="server" />
<ItemTemplate>
</Columns>
</asp:GridView>
GridView 与数据绑定,因此它具有多行。这是 GridView 下方给出的一个按钮,在该按钮上单击我想将文件上传控件的所有文件(同时)上传到服务器。
我在Multiple File Upload 上看到过类似的教程,它做了类似的事情,唯一的区别是我没有一个而是多个文件要上传。
我想用 javascript 或 jQuery 来做。
请帮助我解决这个问题。
谢谢
【问题讨论】:
能否分享您的代码。 【参考方案1】:您必须允许在文件上传控件中上传多个文件,如下所示:
<asp:FileUpload id="FileUploadControl" AllowMultiple="true" runat="server" />
或者:
<asp:FileUpload id="FileUploadControl" Multiple="Multiple" runat="server" />
使用HttpFileCollection
类检索所有要上传的文件:
try
HttpFileCollection hfc = Request.Files;
for (int i = 0; i < hfc.Count; i++)
HttpPostedFile hpf = hfc[i];
if (hpf.ContentLength > 0)
hpf.SaveAs(Server.MapPath("MyFiles") + "\\" +
Path.GetFileName(hpf.FileName));
catch (Exception ex)
// Handle your exception here
详情可以看here
【讨论】:
快乐是我的 :)以上是关于如何使用 JavaScript/jQuery 从 ASP.NET Web 窗体的 GridView 内部同时上传多个文件?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 JavaScript/jQuery 从 HTML 中获取符号的 unicode/hex 表示?
如何使用 javascript/jquery 从 URL 中删除获取变量和文件名?
如何从 .cs 文件 (C#) 调用 JavaScript/jQuery 函数
使用 Javascript/jquery 如何从选定行中的每个单元格获取值
如何使用 JavaScript/jQuery 从 ASP.NET Web 窗体的 GridView 内部同时上传多个文件?