JQuery файл загрузки dataType скрипт IE проблема - PullRequest
3 голосов
/ 25 января 2012

У меня все еще есть проблемы с использованием плагина jquery fileupload, только в IE.

JavaScript выглядит примерно так:

$('input#fileupload').fileupload({
    url: '/upload_attachment.js',
    dataType: 'script',
 ................
 ................

$('input#realupload').bind('change', function(e){
   $('#fileupload').fileupload('send', {
    dataType: 'script',
    files: e.target.files || [{name: this.value}],
    fileInput: $(this)
 }); 
 e.preventDefault();       
});

Это заголовок запроса:

 Key    Value
 Request    POST /holdings/183400184/upload_attachment HTTP/1.1
 Accept text/html, application/xhtml+xml, */*
 Referer    http://192.168.1.209:3000/holdings/183400184
 Accept-Language    en-NZ
 User-Agent Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
 Content-Type   multipart/form-data; boundary=---------------------------7dc1d02610132
 Accept-Encoding    gzip, deflate
 Host   192.168.1.209:3000
 Content-Length 196
 Connection Keep-Alive
 Cache-Control  no-cache
 Cookie xxxxxxxxxxxxxxx

Я указываю dataType как: 'script' и возвращаю с сервера:

 Key    Value
 Response   HTTP/1.1 200 OK 
 Content-Type   text/javascript; charset=utf-8
 Cache-Control  max-age=0, private, must-revalidate
 X-Ua-Compatible    IE=Edge
 X-Runtime  4.625297
 Server WEBrick/1.3.1 (Ruby/1.9.3/2011-10-30)
 Date   Wed, 25 Jan 2012 02:52:48 GMT
 Content-Length 345
 Connection Keep-Alive
 Set-Cookie ******************

И тело ответа:

var li = '<li>';
li += '<img alt="Paperclip" src="/images/paperclip.png?1323904510" /> ';
li += '<a href="/XXXXX/183400184/download_attachment/980191034">test.txt</a> <img alt="Cross_16x16" data_url="/XXXXX/183400184/destroy_attachment/980191034" src="/images/cross_16x16.png?1327452770" />';
li += '</li>';
$('ul#attachments').append(li);

На Chrome, Firefox и т. Д... все хорошо.

В IE он спрашивает меня, хочу ли я открыть или сохранить update_attachment.js ????

Другие вызовы ajax работают нормально, он правильно интерпретирует ответ javascript, только с использованием fileupload no ....

edit:

IE не передается в заголовке запроса:

  X-Requested-With  XMLHttpRequest

1 Ответ

2 голосов
/ 26 января 2012

Я думаю, что это отвечает на мой вопрос

forceIframeTransport

Установите для этого параметра значение true, чтобы принудительно загружать загрузку транспорта iframe, даже если браузер поддерживает загрузку файлов XHR.Это может быть полезно для загрузки файлов между сайтами, если нельзя установить заголовок Access-Control-Allow-Origin для обработчика загрузки на стороне сервера, который требуется для загрузки файлов XHR между сайтами.

Type: boolean
Default: false

IE не выполняет XHR-запрос ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...