请帮助我理解为什么此代码不起作用。我收到“尝试取消引用类 java.lang.Double 类型的标量变量作为具有成员的结构。
<cfoutput>
<cfloop from="1" to="5" index="i">
<cfset moveStruct[i] = i>
<cfset moveStruct[i]['X_TWO'] = i * 2>
</cfloop>
<cfset length = structCount(moveStruct)>
<cfloop from="1" to="#length#" index="i">
#moveStruct[i]# - #moveStruct[i]['X_TWO']#<br />
</cfloop>
</cfoutput>
我期望得到:
1 - 2
2 - 4
3 - 6
等等
我正在尝试学习如何在 ColdFusion 中构建二维结构,以便我可以保存用户输入行并为每行提交不同的查询。我正在用它来尝试找出我如何构建错误的结构。
有时在 CF 中,我喜欢使用如下代码将查询传递给结构(如下),这样当我循环它时,我可以将某些字段与前一行进行比较,以确定是否为此插入页眉或页脚数据组,尤其是有序查询/报告中的数据。我正在尝试在我的实际项目中实现类似的目标。事实上,这段代码有效,我以此为基础尝试手动完成另一个项目:
<cfloop query="prevQuery">
<cfloop list="#prevQuery.columnList#" index="col">
<cfset prevStruct[currentRow]['#col#'] = evaluate(#col#)>
</cfloop>
</cfloop>
谢谢!
最佳答案
你需要
<cfset moveStruct = {}>
<cfloop from="1" to="5" index="i">
<cfset moveStruct[i]['ONE'] = i>
<cfset moveStruct[i]['X_TWO'] = i * 2>
</cfloop>
<cfset length = structCount(moveStruct)>
<cfloop from="1" to="#length#" index="i">
#moveStruct[i]['ONE']# - #moveStruct[i]['X_TWO']#<br />
</cfloop>
关于arrays - 二维 ColdFusion 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21213354/