Blue Dragon版的CFOUPPUT的GROUP问题的一个奇异解决方法。

这次只是真多Blue Dragon版的Coldfusion。Blue Dragon版的Coldfusion有个Bug,就是主文件里的CFOUPUT使用GROUP属性的时候,连CustomTag里面的CFOUTPUT也算进去GROUP里。这个BUG不是很严重,但是很烦人的。


一下使用一个例子来说明这个BUG。

测试数据:

ID,VPN

1, abc

2. abc

3, abc


<CFQUERY Name=“qryProducts” DataSource="ds">

    SELECT * FROM DATA

</CFOUTPUT>

<CFOUTPUT QUERY="qryProducts" GROUP="VPN">

<CF_TEST>

<CFOUTPUT>

#ID#<BR>

</CFOUTPUT>

</CFOUTPUT>


TEST.CFM的内容

<CFSET strToLoop = "Hello World">

<CFOUTPUT>

<CFLOOP List="#strToLoop#" Index=“s”>#s#</CFLOOP>

</CFOUTPUT>


我们期待的结果是:

HelloWorld1

HelloWorld2

HelloWorld3


实际上有这个BUG的时候,结果会变成

HelloWorldHelloWorldHelloWorld1

HelloWorldHelloWorldHelloWorld2

HelloWorldHelloWorldHelloWorld3

因为CustomTag里的CFOUTPUT受到了外面的< CFOUTPUT QUERY="qryProducts" GROUP="VPN">的影响。

为了解决这个问题,我联系BlueDragon的开发商,他们说解决解决,结果关门了还没解决到。所以只有自己去解决了。

以下是我解决这个问题的方法 (我这里只改写TEST.CFM):

新的TEST.CFM


<CFQUERY Name=“qryTest” DataSource="ds">

    SELECT 1 as ABC

</CFOUTPUT>

<CFSET strToLoop = "Hello World">

<CFQUERY Name=“qryTest” DBType="Query">

     SELECT * FROM qryTest

      <CFSAVECONTENT  Variable="ss"><CFLOOP List="#strToLoop#" Index=“s”>#s#</CFLOOP></CFSAVECONTENT>

</CFQUERY>

<CFSCRIPT>WRITEOUTPUT(ss);<CFSCRIPT>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值