0

我正在使用这篇文章使用 Uploadify 上传多个文件。我的页面有多个文件上传 asp 控件。当您单击“添加按钮”时,也会创建这些控件。我现在想要的是上传这些控件中选择的所有文件并将其上传到服务器。

HTML页面

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">
    <title>jQuery Upload multiple files in asp.net</title>
    <script src="http://code.jquery.com/jquery-1.8.2.js"></script>
    <link href="uploadify/uploadify.css" rel="stylesheet" type="text/css" />
    <script src="uploadify/jquery.uploadify.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {
            $("#file_upload").uploadify({
                'swf': 'uploadify/uploadify.swf',
                'uploader': 'Handler.ashx',
                'cancelImg': 'uploadify/cancel.png',
                'buttonText': 'Select Files',
                'fileDesc': 'Image Files',
                'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
                'multi': true,
                'auto': false
            });


            $("#upload").click(function () { $('#file_upload').uploadify('upload','*'); });
        })
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        
<a id="upload" >Upload File</a> 


        <asp:FileUpload ID="file_upload1" runat="server" />
        <asp:FileUpload ID="File_upload2" runat="server" />
    </div>
    </form>
</body>
</html>`

我知道如何通过单选进行上传,但是当我有多个文件上传 asp .net 控件时,我不知道如何调用 Uploadify。我该如何进行?

4

1 回答 1

1

您将需要实例化插件的多个实例,然后在单击上传时将它们全部触发:

例如,以添加到上传控件的类为目标:

<asp:FileUpload CssClass="file_upload" ID="file_upload1" runat="server" />
<asp:FileUpload CssClass="file_upload" ID="File_upload2" runat="server" />

并附加插件:

$(".file_upload").uploadify({

或仅针对type="file"(如下所示)的所有输入:

$("input[type=file]").uploadify({

然后更改单击以启动它们全部上传:

$("#upload").click(function () { 
      $('.file_upload').each(function(){
           $(this).uploadify('upload','*'); 
      });
});

我不保证这会起作用,因为您将立即向服务器发送大量文件,但请试一试。

于 2015-05-06T11:12:50.407 回答