0

我正在尝试在 apex 页面中设置 jquery 文件上传。(http://blueimp.github.io/jQuery-File-Upload/)所以我可以同时将多个图像上传到 s3。它在 chrome/firefox/IE9 上完美运行,但我在 IE10 中提交时遇到问题。仅当我将此插件与 apex:tabpanel 一起放置时才会出现问题 如果我通过 xhr 调试会抛出错误,说“访问被拒绝”。我不确定我做错了什么。

$j.support.cross =真;$j('#fileupload').fileupload({ url: myurl })

4

1 回答 1

0

对于 IE 10,Salesforce ajax 工具在不检查 IE 是否支持 XHR 的情况下劫持 XMLHttpResponse,这就是它无法使用 jquery 文件上传器上传文件的原因。(被劫持的 XMLHttpResponse 变成了旧的 ActiveXObject。这就是它被劫持的原因。

XMLHttpRequest=function(){
  if(!_SARISSA_XMLHTTP_PROGID){_SARISSA_XMLHTTP_PROGID=Sarissa.pickRecentProgID(["Msxml2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"]);}

所以我必须把它取回原来保存在 Sarissa 对象上的 XMLHttpRequest。好消息是原始请求保存在 sarrissa 对象上。但是我不确定他们为什么需要这样做。

$j.ajaxSetup({
  xhr: function() {
    var req;
    req = Sarissa.originalXMLHttpRequest();
    return req;
  }
});
于 2013-07-06T09:21:57.147 回答