我在django網站上使用reportlab來創建和返回PDF。到目前爲止,這僅限於一個「報告」頁面,但我試圖擴展它使用的位置。我創建了一個返回正確響應的ajax調用,但保存/查看PDF的對話框從不顯示,而是刷新頁面。我猜這是因爲我沒有ajax調用的成功函數,但我不確定它應該是什麼。PDF對AJAX的響應將不會顯示
JS:
function get_report(){
$.ajax({
url: '{{root_url}}/timecard/',
type: 'POST',
data: {'emp_id':employee_id},
dataType: 'html',
});
}
HTML:
<input id="id_report" type="submit" value="Print" onclick="get_report()"/>
Django的:
def view_timecard(request):
if request.method == 'POST':
response = get_timecard_report(request)
return response
功能get_timecard_report使用已有的功能來構建一個反應是,原來的頁面上,帶來了打開或保存PDF的對話框。使用調試器,返回的響應看起來與那些正常工作的響應相同。
我想我只需要在ajax成功中正確處理這個問題,但我不確定那會是什麼。
我實在無法理解爲什麼你想在這裏AJAX的使用。你想按下一個按鈕並以PDF的形式得到響應:這正是正常的提交按鈕所要做的。 –