0
我有一个域类我已存储的PDF文件作为一个blob,一个当我尝试以使其在浏览器
class UploadSyllabus {
String semester
Course course
Department department
byte[] uploadSyllabus
}
其中课程,系其他领域类
一个pdf在我Show.gsp
页
<a style="margin-left: 108px;"href="javascript:getPdfFromDB()" id="downloadPdf">Download_Syllabus.pdf</a>
function getPdfFromDB(){
var formdata = $("#downloadSyllabusForm").serialize();
$.get("${grailsApplication.config.grails.serverURL}/uploadSyllabus/getPdfFromDBC", formdata, function(response) {
for (var i = 0; i < response.length; i++) {
document.getElementById("subjectResult").innerHTML=response
document.getElementById("courseResult").innerHTML=$("#course option:selected").text();
document.getElementById("semesterResult").innerHTML=$("#semester option:selected").text();
}
});
}
我的控制器的动作:
def getPdfFromDBC = {
def sem = params.semester
def course = params.course
def department = params.department
List s= UploadSyllabus.executeQuery("select id from UploadSyllabus where department_id = "+params.department +"AND course_id = "+params.course + "AND semester = "+sem)
def product = UploadSyllabus.get(s[0])
println "product is ---"+product
response.contentType = 'application/pdf'
response.setHeader('Content-disposition', 'Attachment; filename=uploadSyllabus.pdf')
response.getOutputStream().write(product.uploadSyllabus)
response.getOutputStream().flush()
// render s.name as SHALLOW
}
我需要做什么,我有三个下拉列表在我的查看页面,当我选择其中3个并点击下载链接时,那么已经上传到数据库中的特定pdf需要下载。
当我运行我的代码时,我没有收到任何错误,但“页面变得没有反应,请杀死或等待浏览器。”感谢名单了很多:
xfermi PDF您不能插入的document.getElementById PDF( “subjectResult”)的innerHTML =响应
。我明白了这个问题。代码正在工作:) – 2012-08-07 06:33:21