我是ColdFusion的初学者,想从循环内向数组附加值。我写了这段代码,但它不适合我。如何在Coldfusion中追加< cfloop>的数组值?
<cfset myArray = arrayNew(1)>
<cfloop query="displayQ" >
<cfquery name="fileListQ" datasource="#REQUEST.datasource#">
select
project_id,
doc_id,
file_name,
file_size,
status,
status_date,
timestamp,
upload_date
from project_documents
where
project_id = "#displayQ.project_id#"
<cfif bitAnd(SESSION.rights,structFind(rightsList,"RIGHTS_ADMIN")) EQ 0
AND bitAnd(SESSION.rights,structFind(rightsList,"RIGHTS_ENOVIS_PS")) EQ 0 >
and status = 3
</cfif>
</cfquery>
<cfloop query="fileListQ">
<tr>
<CFSET myArray=ArrayAppend(myArray,#fileListQ.doc_id#,"true"); />
<td><span class="FAKELINK" onClick="doReport('#fileListQ.file_name#','#fileListQ.doc_id#')">
#fileListQ.file_name#
</span>
</td>
</tr>
</cfloop>
</cfloop>
有关arrayAppend的文档将会有一个示例显示如何正确使用它。话虽如此,鉴于数组函数在cfquery列上工作,您可能不需要另一个变量。最后,在另一个查询的循环内运行查询几乎总是一个非常糟糕的主意。如果数据源相同,请考虑只能使用一个查询获取数据的方法。 –
我已阅读文档也阅读一些文章。你可以帮助我如何编写和使用列表? – vinny
List var与where子句一起使用与另一个查询 – vinny