1

能够使用 Internet Explorer 版本 9,10、Chrome、Firefox 等现代浏览器上传文件。但在使用过时的浏览器(如 * Internet Explorer 版本 * 6、7、8)时没有响应。

HTML 源代码:

<ajaxToolkit:AjaxFileUpload ID="ajaxFUP" runat="server" Width="200px" ThrobberID="myThrobber" ContextKeys="fred"
                    AllowedFileTypes="jpg,jpeg,pdf" MaximumNumberOfFiles="10" onuploadcomplete="ajaxFUP_UploadComplete" />

后面的代码:

   protected void ajaxFUP_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
        {
            string path = Server.MapPath("~/Error/") + e.FileName;
            ajaxFUP.SaveAs(path);
    }

请提供解决方案!

提前致谢!

4

1 回答 1

-1

IE 中的 ajaxfileuplad 只接收声明为 text/html 或 text/plain 的响应。因此,发送一个 HTTP 标头以将响应声明为 text/html 可能有效。

ajaxfileupload 按以下步骤处理响应:

1)将响应定位到 iframe(在 IE 中,只有声明为 text/html 或 text/plain 的内容才能定位到 iframe) 2)调用 ajaxfileupload 中定义的响应回调函数,将 iframe 中的内容转换到您在 ajaxfileupload 的设置中指定的内容类型 3) 在您的 ajaxfileupload 设置中调用您的响应回调函数

于 2013-03-06T09:43:53.977 回答