我正在使用替换功能使用word文档中的占位符替换数据。我正试着用桌子做同样的事情。我可以将包含表格的页面输出到MS Word,但是当我使用cfsavecontent并尝试替换现有文档时,它不起作用。
代码:
<cfsavecontent variable="rosterTb">
<table border='2' style='width:75%'>
<thead>
<caption><cfoutput><cfif Dept NEQ "">#Dept#:</cfif> Sales Roster</cfoutput><caption>
<tr>
<cfloop list='#ArrayToList(qGetEmpData.getColumnNames())#' index='col' >
<cfif col NEQ "ID">
<cfset col = ReplaceNoCase(#col#,"_", " ","all")>
<th><cfoutput>#col#</cfoutput></th>
</cfif>
</cfloop>
</tr>
</thead>
<tbody>
<cfloop query = "qGetTableFldList">
<cfset total = total + #qGetTableFldList.Total#>
<tr>
<cfloop list='#ArrayToList(qGetEmpData.getColumnNames())#' index='col' >
<cfif col NEQ "ID">
<td>
<cfif IsNumeric(qGetEmpData[col][currentrow])>
<center>
<cfoutput>#qGetEmpData[col][currentrow]#</cfoutput>
</center>
<cfelse>
<cfoutput>#qGetEmpData[col][currentrow]#</cfoutput>
</cfif>
</td>
</cfif>
</cfloop>
</tr>
</cfloop>
<cfset x = 1>
<cfset trtdcolspan = "<tr><td><b>Total Count:</b></td><td colspan = #x#>">
<center>
<cfoutput>#trtdcolspan#Total#</td></tr></cfoutput></center>
</tbody>
</table>
</cfsavecontent>
<cfset rtf = Replace(rtf,'%rTable%','#rosterTb#',"one") />
%rTable%是文档中我希望放置表格的占位符。
这是word文档中的结果:
<table border='2' style='width:75%'>
<thead>
<caption>Sales: Roster</caption>
<tr>
<th>First Name</th>
<th>Last Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>Richard</td>
<td>Smith</td>
</tr>
<center>
<tr>
<td><b>Total Count:</b></td>
<td colspan = 1>6</td>
</tr>
</center>
</tbody>
</table>
我也尝试将表设置为变量,但它似乎不喜欢循环或列名的索引。
<tableborder='2'style='width:75%'>
<thead>
<caption>
<cfoutput><cfif Dept NEQ ''>Dept:</cfif>Roster</cfoutput>
</caption>
<tr>
<cflooplist='ID,First Name,Last Name 'index='col'>
<cfif col NEQ 'ID'>
<th>
<cfoutput>First Name</cfoutput>
</th>
</cfif>
</cfloop>
</tr>
</thead>
<tbody>
<cfloopquery='qGetTableFldList'>
<cfset total=total+6>
<tr>
<cflooplist='ID,FirstName,LastName 'index='col'>
<cfif col NEQ 'ID'>
<td>
<cfif IsNumeric(qEmpData[col][currentrow])>
<center>qEmpData[col][currentrow]</center>
<cfelse>
qEmpData[col][currentrow]
</cfif>
</td>
</cfif>
</cfloop>
</tr>
</cfloop>
<cfset x=1>
<center>
<cfoutput>
<tr>
<td><b>Total Count:</b></td><tdcolspan=15>0</td>
</tr>
</cfoutput>
</center>
</tbody>
</table>
我非常感谢任何帮助。