gpt4 book ai didi

coldfusion - 当我在 cfoutput 中调用函数时,为什么 ColdFusion 会添加空格?

转载 作者:行者123 更新时间:2023-12-02 22:31:43 25 4
gpt4 key购买 nike

如果我在 ColdFusion 中执行类似的操作:

<cfoutput>foo="#foo()#"</cfoutput>

生成的 HTML 前面有一个空格:

foo=" BAR"

但是,如果它不是函数调用,它就可以正常工作,即:

<cfset fooOut=foo() />
<cfoutput>foo="#fooOut#"</cfoutput>

给出以下输出:

foo="BAR"

这个额外的空间从何而来,我能做些什么吗?

<小时/>

编辑澄清一下,空格不在我的foo函数返回的值中:

<cffunction name="foo" access="public" returntype="string">
<cfreturn "BAR" />
</cffunction>

但我还发现内置函数不会发生这种情况,即:

<cfoutput>"#UCase("bar")#"</cfoutput>

打印:

"BAR"

但是,如果我将函数的输出传递给内置函数,则确实会发生这种情况(这部分对我来说没有意义)。即:

<cfoutput>"#UCase(foo())#"</cfoutput>

打印:

" BAR"

最佳答案

确保您将输出属性定义为 false。

<cfcomponent output="false">

<cffunction name="foo" access="public" returntype="string" output="false">
<cfreturn "BAR">
</cffunction>

</cfcomponent>

或者,以cfscript风格进行,不会引入额外的空间。

function foo()
{
return "BAR";
}

关于coldfusion - 当我在 cfoutput 中调用函数时,为什么 ColdFusion 会添加空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2791813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com