我正在尝试使用单击按钮将功能输出的内容导出到Excel。我已经为按钮创建了一个操作页面,该页面使用cfheader和cfcontent标签调用导出到excel页面。使用这些标签导出excel工作正常但在cfcontent标签之后我创建了一个表单并将其重定向回调用页面。 cfcontent标记之后的代码未执行且页面未重定向。我应该如何在cfcontent标签后重定向?请帮我解决这个问题。
这是我用于导出到excel的代码。
<cfsavecontent variable="strExcelData">
<cfoutput>#fn_retrieveData()#</cfoutput>
</cfsavecontent>
<cfheader name="Content-Disposition" value="attachment; filename=Audit_#DateFormat(Now(),'ddmmyyyy')#.xls"/>
<cfcontent type="application/vnd.msexcel" variable="#ToBinary( ToBase64( strExcelData.Trim() ) )#"/>
<form name=frm_AuditTrail method=POST action=tchk_AuditTrailSearch.cfm>
<cfoutput>
<input type='hidden' name='txt_searchstr1' id='txt_searchstr1' value='#FORM.txt_searchstr1#' />
<input type='hidden' name='txt_searchstr2' id='txt_searchstr2' value='#FORM.txt_searchstr2#' />
</cfoutput>
</form>
<script type="text/javascript">
window.onload = function()
{
alert("windows.onload is redirecting to review data page NOW");
document.frm_AuditTrail.submit();
return;
}
</script>
答案 0 :(得分:3)
<cfcontent>
标记后无法输出任何内容;它被忽略了。只有<cfcontent>
标记的内容会被发送回浏览器。
variable Optional Name of a ColdFusion binary variable whose contents can be
displayed by the browser, such as the contents of a chart
generated by the cfchart tag or a PDF or Excel file retrieved
by a cffile action="readBinary" tag. When you use this
attribute, any other output on the current CFML page is
ignored; only the contents of the file are sent to the client.