グリッドをエクスポートできるようにグリッドとボタンを含むアプリケーションがあります。サーバーがExcelファイルで応答したときに[名前を付けて保存]ダイアログボックスを表示できるようにしたいと考えています。サーバーは、パラメータをJSONオブジェクトとして受け入れます。ここに私のコードは次のとおりです。 -Ext JsのAJAXリクエストで保存ダイアログボックスを生成
Ext.Ajax.request({
url: '/export/excel/',
method: 'POST',
//Send the query as the message body
jsonData: jsonStr,
success: function (result,request) {
Ext.DomHelper.append(document.body, {
tag: 'iframe',
frameBorder: 0,
width: 0,
height: 0,
//src:result,
css: 'display:none;visibility:hidden;height:1px;'
});
}, //success
failure: function (response, opts) {
var msg = 'server-side failure with status code: ' + response.status + ' message: ' + response.statusText;
Ext.Msg.alert('Error Message', msg);
}
});
私は同様の質問(ExtJS AJAX save as dialog box)がある知っているが、それはJSONが、結果はそれぞれ異なることになるだろう送っによってserver.In上の静的ファイル私の場合は、参照します時間。私はresult.responseTextで望むエクセルファイル全体を返す。ダイアログボックスがポップアップしてユーザーにオプションとして保存を要求するためには、何をする必要がありますか?また、どのようにdomhelperのsrc
を設定するべきかわからない。どんな助けでも本当に感謝しています。
これは私に多くの感謝を助けました。私はContent-Dispositionに関する問題を抱えていた – RTF