包含数字的动态变量

时间:2016-04-23 02:01:03

标签: coldfusion

我已经尝试过可能适用于此的所有内容,但迄今未成功。

我的变量看起来像

  

x000Foo

我试图在查询结果的表单范围内动态创建其中一个,并尝试了以下几个,但没有成功:

<cfloop query="qFormFields">

    <cfset "form.x000#fieldname#" = 0>
    You have attempted to dereference a scalar variable of type class coldfusion.sql.QueryColumn as a structure with members

    <cfset "form.x[000]#fieldname#" = 0>
    The value x000AA_report cannot be converted to a number. 

    <cfset form["x000#fieldname#"] = 0>
    The value x000AA_report cannot be converted to a number. 

</cfloop

我知道它与零相关,但我不知道如何绕过它而不需要在整个应用程序中重命名这些变量。

我在ColdFusion2016上

2 个答案:

答案 0 :(得分:3)

我不确定这是不是你要做的事情:但这里是你如何做动态变量:

<cfset fieldname = "foo">
<cfset form["x000" & fieldname] = 0>
<cfdump var="#form#">
<!--- variable form.x000Foo = 0 --->

Runnable example on TryCF.com

答案 1 :(得分:0)

您可以尝试evaluate函数read more

<cfloop query="qFormFields">
      <cfset fieldvalue = Evaluate("form.x000#fieldname#")>
      <cfdump var="#fieldvalue#">
</cfloop>

让我知道它是否有效。