0

Can any one suggest if there is any package or useful link for this.

As of now, I have a button on my visualforce page, where I can upload one document. If i select another document again, the 1st one is over writed. So, here can any one suggest how to add multiple attachments using one button. Like in gmail, we add attachments.

I am just looking for useful link. As far I have searched, I wasn;'t able to find. I will be able to write the code, based on the suggested link or package.

Thanks in advance..

2 Answers 2

3

There is no visualforce native solution to this. But you can use HTML5 to achieve this.

<input type="file" name="files[]" multiple="multiple" onchange="uploadFiles(this);"/>

and catch the files in input.files array in JavaScript.

     <script type="text/javascript">
        function uploadFiles(input)
        {
            for(var i =0; i<input.files.length; i++)
            {           
                var filesizeInBytes = input.files[i].size;
                var filename = input.files[i].name;
                console.log("File name is : "+input.files[i].name+" and  size : "+input.files[i].size+" Bytes");                    
            }           
        }

    </script>

You can utilize this blog to read the files uploaded and send to apex controller.

5
  • Santanu, this working when i add multiple files at a time. If i select one file and after selecting the first one, if select 2nd one in another instance then 1st one is lost. Can you suggest how to overcome this?
    – venky
    Commented Apr 28, 2017 at 12:50
  • Not sure, but I think you can keep an array declared outside uploadFiles function and dump all items from input.files into that.. so in a way, that array will keep all the files selected in different instances. Commented Apr 28, 2017 at 13:46
  • Use the script on this blog to bypass the limit kevansfdc.blogspot.com/2017/05/…
    – Kevan
    Commented May 15, 2017 at 10:34
  • Hi Santanu how can i get the files content once the file is passed to apex controller not through ajax.Is there other way around. Commented Apr 19, 2019 at 9:38
  • @DeepakAgarwal, that depends upon how you are sending the file body to apex. I would suggest you to open a new question about it and we should be able to help you better. Commented Apr 22, 2019 at 7:15
0

Check this out venky in the official dev forum : developer forum

1
  • Thanks for sharing this link, but it consist of multiple buttons for multiple attachments.
    – venky
    Commented Apr 28, 2017 at 8:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .