Как загрузить несколько файлов одновременно из GridView веб-форм ASP.NET, используя JavaScript / jQuery? - PullRequest
0 голосов
/ 26 сентября 2019

У меня есть GridView и несколько столбцов в нем.Я создал столбец шаблона внутри GridView, и в нем размещен элемент управления загрузкой файла .

<asp:GridView ID="GridView1" runat="server">
  <Columns>
    <ItemTemplate>
      <asp:FileUpload id="FileUploadControl" runat="server" />
    <ItemTemplate>
  </Columns>
</asp:GridView>

GridView связан с данными, поэтому он имеет несколько строк.Это кнопка, расположенная под GridView, и при нажатии кнопки я хочу загрузить все файлы элемента управления загрузкой файлов (одновременно) на сервер.

Я видел похожий учебник по Загрузка нескольких файлов , который делает похожую вещь, с той лишь разницей, что у меня есть не один, а несколько файлов для загрузки.

Я хочу использовать JavaScript или jQuery для этого.

Пожалуйста, помогите мне в этой проблеме.

Спасибо

1 Ответ

0 голосов
/ 26 сентября 2019

Вы должны разрешить загрузку нескольких файлов в свой элемент управления загрузкой файлов следующим образом:

<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
    }

Для получения подробной информации, вы можете посмотреть на здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...