我的程序有一个错误 - 输出中有额外的垃圾,不属于那里。 Firebug向我展示了可以产生这种不需要的垃圾的代码行,但我的程序中没有这些行。我花了几个小时才解决这个问题。这就是Firebug所说的内容(波浪括号中的内容是我的评论:
<tr>
<td class="repnum" style="width: 20px">1 </td> {td 1}
<td class="reprow" style="text-align: left; "> Maura</td> {td 2}
<td class="reprow" style="text-align: left; "> Cronin</td> {td 3}
<td class="repsort subhead"> </td> cannot find this anywhere
</tr>
<tr> cannot find this anywhere
<td class="repsort2 subhead "> </td> cannot find this anywhere
</tr> cannot find this anywhere
我的计划的一部分如下。实际程序中还包含其他ColdFusion内容,但没有其他HTML。
<tr>
... other stuff ...
<cfloop from = "#subpage1#" to = "#subhind_1#" index = "j">
<cfif sortnum[j] EQ 'y'>
<cfif subhdup[j][row] EQ "NO">
<cfset ctr[j] = 1>
<cfelseif subhdup[j][row] EQ "YES">
<cfset ctr[j] = ctr[j] + 1> <cfloop from = "#subpage1#" to = "#subhind_1#" index = "j">
<cfif sortnum[j] EQ 'y'>
<cfif subhdup[j][row] EQ "NO">
<cfset ctr[j] = 1>
<cfelseif subhdup[j][row] EQ "YES">
<cfset ctr[j] = ctr[j] + 1>
</cfif>
<td class = "repnum" style = "width: 20px">#ctr[j]# </td> td 1
</cfif>
</cfloop>
<cfloop from = "#subhind#" to = "#bbcollen#" index = "j">
<cfset col = bbcol[j]>
<cfset i = i + 1>
<cfif linefold GT 0>
<cfset imod = i%linefold>
<cfelse>
<cfset imod = 1>
</cfif>
<cfif linefold EQ 0 OR (linefold GT 0 AND i LE linefold)>
<cfset lineclass = "reprow">
<cfelse>
<cfset lineclass = "reprow2">
</cfif>
<cfif repdetail NEQ 'n'>
<cfoutput>
<cfset jcol = inpcol[j]>
<cfset temp = structaux["#jcol#InputType"]>
<cfif temp EQ "num" OR temp EQ "one">
<cfset anumform = NumberFormat(qrep[col][currentrow],.99)>
<td class = "#lineclass#" style = "text-align: right"> #anumform#</td>
<cfelseif temp EQ "date">
<cfset adate = DateFormat(qrep[col][currentrow],'mm/dd/yyyy')>
<cfif adate EQ "01/01/1001">
<cfset adate = "~">
</cfif>
<td class = "#lineclass#" style = "text-align: left"> #adate#</td>
<cfelse>
<td class = "#lineclass#" style = "text-align: left; "> #qrep[col][row]#</td>
</cfif><!---temp eq num --->
</cfloop> <!---subhind to bbcollen --->
... other stuff ...
</tr>
有人有建议吗?
根据要求我扩展了代码
有人说这是关于空白的。它不是。如果是空白,我会没事的。但是我有各种各样的css掉进那些额外的空间,创造边界等等。它确实产生了难以辨认的混乱。
答案 0 :(得分:1)
我认为这个Stack问题可以更好地回答为什么存在随机html输出。它也可能是浏览器试图纠正代码中可能存在的所有错误的HTML ...换句话说,您可能会遇到一个小错误,例如您的标记不匹配在一起..无论哪种方式,浏览器都会捕获错误,仍然产生您想要的确切代码。话虽如此,除非你想忽略你的代码并找到标签可能无法匹配的确切位置,否则实际上没什么可烦恼的。
由于我对ColdFusion的知识非常有限,我建议Syntax Checker另一个Stack问题已经过去了。在找到您的语法是否正确后,这可能会突出显示需要处理的确切区域。
答案 1 :(得分:1)
除非代码说明,否则ColdFusion不会生成<tr>
或<td>
。
通常额外的空格不重要,不会改变浏览器上显示的内容。
如果您的区域必须没有空格,请添加<cfsilent>
make以删除空间生成。
答案 2 :(得分:0)
确保您确实在查看正确的代码块。我之所以这么说是因为你的CF逻辑在class属性的等号的两边都有空格但是渲染的HTML没有(我不确定你是否修改过它)。我每天都使用CF而且从未见过这个。在查看源代码时,浏览器会不时添加html,例如<thead>
和<tbody>
标记,但在您的示例中没有任何内容。我会说(1)确保你正在查看正确的代码块(2)显示更多的页面,以便我们可以按照流程进行操作,例如,设置#lineclass#。只需按照逻辑,添加一些cfdumps,或发布整页,以便我们可以提供更多帮助。
答案 3 :(得分:0)
我愿意打赌您的1974年福特Pinto,如果您对项目中的所有代码进行扩展文本搜索,所有文件类型,您将找到您正在考虑额外的代码。 / p>