1

我正在尝试从数组中引用查询并在 cfloop 标记中使用它,但我一直收到错误消息

错误:

该表达式已请求一个变量或一个中间表达式结果作为一个简单值。但是,结果不能转换为简单值。简单值是字符串、数字、布尔值和日期/时间值。查询、数组和 COM 对象是复值的示例。

错误的最可能原因是您尝试将复杂值用作简单值。例如,您尝试在 cfif 标记中使用查询变量。

代码:

<cfquery datasource="datasource" name="valueQuery">SELECT count FROM watermelons</cfquery>
<cfset queryArray = ArrayNew(1)>

<cfscript>
ArrayAppend(queryArray, valueQuery);
</cfscript>

<cfloop query="#queryArray[1]#">
        <!---do stuff--->
</cfloop>

我也试过(没有磅):

<cfloop query="queryArray[1]">
            <!---do stuff--->
</cfloop>

这给出了这个错误:

当前为 queryArray[1] 的属性查询的值无效。

4

1 回答 1

8
<cfset queryIndex = queryArray[1]>
<cfloop query="queryIndex">
        <!---do stuff--->
</cfloop>

因为query=""需要一个变量名。

于 2011-09-14T19:06:38.090 回答