fre*_*ent 1 variables coldfusion dynamic output
我试图循环一个包含我需要显示的列名的数组.用户可以定义自己的列,因此这将是动态列名列表
例如,列名可能是:
["style", "color", "size"]
Run Code Online (Sandbox Code Playgroud)
这些是我需要从我的查询中输出的列名称results.
我这样做:
<cfset variables.styleText = "">
<cfloop array="#DeserializeJSON(variables.raw.field_names)#" index="x">
<cfset variables.styleText = variables.styleText & "#results." & x &"# ">
</cfloop>
<cfoutout>variables.styleText</cfoutput>
Run Code Online (Sandbox Code Playgroud)
但是,这给了我一个错误,因为我不能以结束变量名quot又名
Diagnose: A CFML variable name cannot end with a "." character.
The variable results. ends with a "." character.
You must supply an additional structure key or delete the "." character.
Run Code Online (Sandbox Code Playgroud)
问题:
任何人都可以给我一个提示results,在这种情况下,我需要如何修改它以输出查询中
的值#results.style# #results.color# #results.size#?
谢谢!
代替
<cfloop array="#DeserializeJSON(variables.raw.field_names)#" index="x">
<cfset variables.styleText = variables.styleText & "#results." & x &"# ">
</cfloop>
Run Code Online (Sandbox Code Playgroud)
你应该能做到的
<cfloop array="#DeserializeJSON(variables.raw.field_names)#" index="x">
<cfset variables.styleText = variables.styleText & results[x][results.currentrow]>
</cfloop>
Run Code Online (Sandbox Code Playgroud)
或者,如果您只是简单地使用CF9或更高版本
<cfset variables.styleText&=results[x][results.currentrow]>
Run Code Online (Sandbox Code Playgroud)