sun*_*der 6 jquery html5 internet-explorer xmlhttprequest jquery-file-upload
我创建了一个带有进度条的新的多拖放文件上传控件.它适用于所有浏览器,除了IE 10及更高版本的问题.
当我在IE中上传文件时,大多数时候jquery异步请求都无法完成.它显示待定.我可以看到它在IE网络调试器窗口中待定.但在所有其他浏览器中它运行良好.我无能为力这里有什么不妥.最初我认为它可能与缓存有关.但在服务器响应中添加以下参数后.它仍然处于待定状态
context.Response.AppendHeader("Cache-Control", "no-cache"); // HTTP 1.1
context.Response.AppendHeader("Pragma", "no-cache"); // HTTP 1.1
Run Code Online (Sandbox Code Playgroud)

for (var i = 0; i < files.length; i++) {
var data = new FormData();
data.append(files[i].name, files[i]);
uploadFile(handlerurl, data);
}
function uploadFile(handlerurl, formData) {
var jqXHR = $.ajax({
type: 'POST',
url: handlerurl,
contentType: false,
processData: false,
async: true,
cache: false,
data: formData,
xhr: function () { },
success: function (result, status, xhr) { },
error: function (xhr, status, error) { }
});
}
Run Code Online (Sandbox Code Playgroud)
我在每个文件中调用此函数.我不确定IE有什么问题.
编辑:调试后,发现服务器断点将命中.但是context.Request.Files中没有文件.没有文件从jquery/AJAX发送.您可以通过反复上传同一文件来重现此问题.
您是否尝试为 handlerUrl 传递绝对 URL?
如果您的代码是在独立的 js 文件中编写的,则绝对 URL 会有所帮助;如果代码是在 html 上编写的,则传递正确的相对 URL 会有所帮助。
| 归档时间: |
|
| 查看次数: |
3441 次 |
| 最近记录: |