2014-03-05 36 views
-1

我创建一个UI转换文件。我的后端代码是在Python中。 Python处理程序由javascript调用(使用ajax)。我正在用下面的python创建一个csv文件。如何从蟒蛇到HTML或JavaScript

Results = [] 
filename = "D:/mydir/testing.csv" 
csvfilename = "D:/mydir/testing.csv" 
Results.append(["test1","test2","test3"]) 
with open(filename, 'wb') as f: 
    writer = csv.writer(f) 
    writer.writerows(Results) 
csvfile = open(csvfilename, "r") 
self.set_header("Content-Type", "application/csv") 
self.set_header('Content-Disposition', 'attachment; filename="testing.csv"') 
tempfile = csvfile.read() 
self.write(tempfile) 

上面的代码创建文件(类型为“Microsoft Office Excel中逗号分隔值文件(.csv)”)。我使用Ajax调用像下面调用上述处理程序上点击。

$.get("/filehandler", {startdate:startdate,enddate:enddate,reportname:reportname},function(data) 
{ 
    alert(data); 
}); 

其实我的意图是点击按钮,它应该要求保存'testing.csv'文件。 现在我有硬编码的数组内容,该文件的数据应该来自python。 有没有办法使用下面的代码获得解决方案?

<a onclick="function()" download> 

回答

0

是的,你可以链接到直接在脚本:

<a href="path-to-your-hardcoded-python-script">download</a> 

在回答您发表评论,也没有必要使用Ajax调用,因为这些参数已硬编码。打开上面的链接触发下载,因为python脚本已经设置下载头。

+0

我必须使用AJAX调用的Python处理程序。 ajax响应应该是可下载的文件 – user3136030