2012-01-25 12 views
3

私はまだjquery fileuploadプラグインを使用して、IEでのみ問題があります。jqueryファイルのアップロードdataTypeスクリプトIEの問題

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 

私がするデータ型を指定します。: 'スクリプト' と、私は、サーバーから返さ:

$('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 
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); 

クロム、ファイアフォックスなどではすべていいです。

IEでは、update_attachment.jsを開いたり保存したりするかどうか尋ねられますか?

IEが要求ヘッダーに通過されない:

X-Requested-With XMLHttpRequest 

他のAJAX呼び出しは正常に動作、それだけでないファイルアップロード....

編集を使用して、適切にジャバスクリプト応答を解釈します私が思う

答えて

2

が、これは私の質問に答える

forceIframeTransport

ブラウザでXHRファイルのアップロードが可能な場合でも、このオプションをtrueに設定すると、iframe転送のアップロードが強制されます。 クロスサイトXHRファイルのアップロードに必要なサーバー側のアップロードハンドラにAccess Control-Allow-Originヘッダー を設定できない場合、クロスサイトファイルのアップロードに便利です( )。

Type: boolean 
Default: false 

IEはなぜこれをdownvoted誰

+0

... XHRリクエストをしていないのですか? – Will