考虑test.cfm文件,其中包含以下内容:
<html>
<body>
<cfif foo EQ bar>
<cfset test = "something" />
</cfif>
<p>Hello!</p>
</body>
</html>
在浏览器中运行时,此文件输出的源代码如下所示:
<html>
<body>
<p>Hello!</p>
</body>
</html>
有什么方法可以解决这个问题吗?
答案 0 :(得分:6)
有什么方法可以解决这个问题吗?
修复没有任何内容 - HTML完全有效且功能齐全。
如果您的问题是请求的大小,请使用gzip编码。
如果您的问题是阅读调试/等来源,请使用Firebug /等开发人员工具。
但是,您应该做的一般事情是提高可维护性(同时也减少空白输出):
1)将任何非显示逻辑的内容移出您的视图。
2)将显示逻辑转换为适当的功能和自定义标签,这样可以更容易地防止/控制输出。
为防止输出不需要的内容,您可以:
将整个部分包裹在cfsilent中,以确保无法输出任何内容。
启用cfsetting的enablecfoutputonly
属性,然后仅在您要输出的内容周围使用cfoutput。
始终在组件和功能标签上设置output=false
。
如果要选择性地输出某些文本,请在CFML注释<!---
... --->
中包装非标记非输出段(例如,用于防止自定义标记中的换行输出)
(我从不打扰cfprocessingdirective,上面提到的一切都能更好地解决问题。)
答案 1 :(得分:4)
如果您有权访问CF管理员,则可以选择抑制空白区域。
位于“服务器设置”下 - &gt; “设置”称为“启用空白空间管理”。
答案 2 :(得分:3)
尝试<cfprocessingdirective suppressWhiteSpace="true">
参考:http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-76de.html