Solved

Unable to download files from application in Mozilla firefox

Posted on 2009-07-11
2
1,638 Views
Last Modified: 2013-12-07
We have a link in one of our web pages. On click of this link we open a pop-up window in which we display all documents that a user has uploaded to our application. We are opening the pop-up window as a model dialog using the function 'window.showModalDialog()' in javascript.

We have a download link for each attachment uploaded. The download link triggers a post-back event which downloads a file from the server. During the download, the 'save-as' dialog box opens.

Now the problem is, during the execution of above scenario in Mozilla Firefox browser, once the 'save as' dialog box opens (as shown in the attachment), the whole dialog box freezes. The 'save-as' or 'Cancel' buttons does not work. The 'save as' dialog box can be closed only using the window close (X) button. As a result, we are not able to download the file which we intend to. This problem does not occur with the Internet Explorer browser and so we are able to download the file. We are facing this problem only with Mozilla Firefox.

This 'save as' dialog box also works perfectly if the window with all attachments is opened as an ordinary window (using the function 'window.open()') instead of the modal dialog.

I have attached code and word document with code.

Thanks.
if (!IsPostBack)

            {

                if (Request.QueryString.ToString() == "instructions")

                {

                    pnlInstructions.Visible = true;

                }

                else

                {

                    root = System.Configuration.ConfigurationSettings.AppSettings["attachement_root"].ToString();

                    filepath = Session["filepath"].ToString();

                    filename = Session["filename"].ToString();

                    string[] s_arr = filepath.Split(new char[] { '\\' });

                    filename = s_arr[s_arr.Length - 1];//filepath.Substring(filepath.LastIndexOf("\\"), filepath.Length-filepath.LastIndexOf("\\"));

                    if (filepath != null)

                    {

                        if (File.Exists(filepath))

                        {

                            Response.ClearHeaders();

                            Response.Buffer = true;

                            Response.ClearContent();

                            Response.Clear();

 

 

                            FileInfo DownloadFileInfo = new FileInfo(filepath);

                            string Ext = DownloadFileInfo.Extension;

 

                            if (Ext != null)

                            {

                                Ext = Ext.ToLower();

                            }

 

                            switch (Ext)

                            {

                                case ".exe":

                                    //Exe file

                                    Response.ContentType = "application/octet-stream";

                                    break;

                                case ".zip":

                                    //Zip file

                                    Response.ContentType = "application/x-zip-compressed";

                                    break;

                                case ".pdf":

                                    //Pdf file

                                    Response.ContentType = "application/pdf";

                                    break;

                                case ".doc":

                                    //MS Word

                                    Response.ContentType = "Application/msword";

                                    break;

                                case ".docx":

                                    //MS Word

                                    Response.ContentType = "Application/msword";

                                    break;

                                case ".dll":

                                    //Dll file

                                    Response.ContentType = "application/x-msdownload";

                                    break;

                                case ".html":

                                    //Html file

                                    Response.ContentType = "text/HTML";

                                    break;

                                case ".txt":

                                    //Txt file

                                    Response.ContentType = "text/plain";

                                    //Response.ContentType = "application/notepad";

                                    break;

                                case ".jpeg":

                                    //Jpg picture

                                    Response.ContentType = "image/JPEG";

                                    break;

                                case ".jpg":

                                    //Jpg picture

                                    Response.ContentType = "image/jpg";

                                    break;

                                case ".bmp":

                                    //bmp picture

                                    Response.ContentType = "image/bmp";

                                    break;

                                default:

                                    Response.ContentType = "application/octet-stream";

                                    break;

                            }

 

			

                            Response.AddHeader("Content-Disposition", "attachment; filename=" + filename);

                            Response.TransmitFile(filepath );

                            Response.End();

 

                        }

                    }

Open in new window

sample-code.doc
sample-code-to-open-window-as-mo.doc
0
Comment
Question by:mauneeld
2 Comments
 

Accepted Solution

by:
mauneeld earned 0 total points
ID: 24855334
(Modal Window) FileUploadNew à opens File DownloadNew.       This was not working.

So what I did was, created a temporary file which will open as a new simple window and that new window will now call FileDownloadNew.

(Modal Window) FileUploadNew à opens FileDownloadTemp (simplewindow) à opens FileDownloadNew. this works fine.

Bhavin
0
 

Expert Comment

by:joy_vinod
ID: 32632991
The solution is not clear.
What is FileUploadNew & DownloadNew. It seems they are some functions in your code, which are not mentioned in the files you have attached.

Could you please explain it in more detail?
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Problem to page 4 71
Achieve json result 2 65
Different Delete Messages 7 37
error on the asp.net page 1 33
Now-a-days, indirectly, postal services have been replaced by email services. Yes, whenever we hear the word "email" a lot of people only think of gmail. Some people still think that email and gmail are one and the same thing :-). Let's see some …
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This Micro Tutorial will demonstrate how to add subdomains to your content reports. This can be very importing in having a site with multiple subdomains.
Shows how to create a shortcut to site-search Experts Exchange using Google in the Chrome browser. This eliminates the need to type out site:experts-exchange.com whenever you want to search the site. Launch the Search Engine Menu: In chrome, via you…

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now