У меня все еще есть проблемы с использованием плагина 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