私はBlueimp Jquery File Uploadプラグインを使用してファイルを非同期でアップロードしています。他のほとんどのブラウザでうまく動作します(マイナーな問題がいくつかあります).IEでは、 "done"、 "stop"、 "always"、 "complete"などのイベントコールバックは呼び出されません。blueimp jquery file upload - "完了"、 "完了"のコールバックがIE 9で動作しない
デバッグ中に_onSend関数(jquery.fileupload.js)のajaxリクエストに "done"、 "fail"、 "always"というconsole.logを追加しました。しかし、それらのどれもIEで起動されていないようです。
_onSend: function (e, data) {
var that = this,
jqXHR,
slot,
pipe,
options = that._getAJAXSettings(data),
send = function (resolve, args) {
that._sending += 1;
jqXHR = jqXHR || (
(resolve !== false &&
that._trigger('send', e, options) !== false &&
(that._chunkedUpload(options) || $.ajax(options))) ||
that._getXHRPromise(false, options.context, args)
).complete(function (result, textStatus, jqXHR) {
console.log("complete");
}).done(function (result, textStatus, jqXHR) {
console.log("done", result);
}).fail(function (jqXHR, textStatus, errorThrown) {
console.log("fail", result);
}).always(function (a1, a2, a3) {
console.log("done", result);
}
});
return jqXHR;
};
[プラグインコードが読みやすくするためにトリミング]
Iは、ファイルのアップロードのために使用IE 9において、jquery.iframe-transport.js(XHRのファイルのアップロードはIEでサポートされていないように)ことを理解します。
私はこの問題を修正/デバッグする方法についてはわかりません。
ありがとうございます!
これを行うにはどうすればよいのですか? – CanCeylan
@CanCeylan:render:text => {...}レンダリングの代わりに.to_json:json => {...} – mkk
@ tanushreeこの応答を書き留めていただきありがとうございます。私はしばらくの間デバッグしていた問題を修正しました。 – PhysX