2012-02-08 24 views
3

我有这样的阵列结构设置的:如何通过钢结构制品的阵列循环中的ColdFusion

<cfset table_columns = [ 
    {name="Right Name", var_name="right_name", searchable="true", sortable="true"}, 
    {name="Right Type", var_name="right_type", searchable="true", sortable="true"}, 
    {name="Right Description", var_name="right_descr", searchable="true", sortable="true"}, 
    {name="Edit", var_name = "editcol", searchable="false", sortable="false"} 
]> 

我怎么会遍历呢?这里是什么,我需要做榜样(这显然是不工作):

<cfloop array="#table_columns#" index="data_index"> 
    {"sName": "#table_columns[data_index]['name']#", "sTitle": "#table_columns[data_index]['var_name']#", "bsearchable": "#table_columns[data_index]['searchable']#", "bsortable": "#table_columns[data_index]['sortable']#"}, 
</cfloop> 

回答

6

对于数组循环,index值是该数组的一个元素,而不是一个位置。含义data_index是一种结构。所以你可以照常输出键(无论是结构还是点符号)。

<cfloop array="#table_columns#" index="data_index"> 
    {"sName": "#data_index['name']#", "sTitle": "#data_index['var_name']#", "bsearchable": "#data_index['searchable']#", "bsortable": "#data_index['sortable']#"}, 
</cfloop> 
+0

这就是我一直在寻找,谢谢! – RandyLahey 2012-02-08 18:40:18

+0

我收到错误:元素'mykey'在作为表达式的一部分引用的CFML结构中未定义。 – 2013-10-04 06:10:23

+1

@yoosafinpace - 对于新的问题,你应该[打开一个单独的线程](http://stackoverflow.com/questions/ask)。一定要包括1)一个独立的例子和b)任何错误消息。 – Leigh 2013-10-05 04:20:57