我有一个带有表格和“添加项目”按钮的表格。单击“添加项目”后,将打开第二个表单,用户可以在其中添加详细信息。单击第二页上的“提交”后,详细信息应作为新行添加到第一个屏幕的表格中。我正在使用数组和结构在数组中添加/追加。
每次用户尝试添加新行时,我都会在现有数组(第 1 页)中创建一个新结构并尝试在第一页上显示该数组。
<cfset arrayRequisition[k] = StructNew() />
<cfset arrayRequisition[k].Part_Nbr = #Variables.ReqDescription# />
<cfset arrayRequisition[k].Description = #Variables.EQT_DESCRIPTION# />
<cfset arrayRequisition[k].Quantity = #Variables.RQT_QUANTITY# />
<cfset arrayRequisition[k].Status = "pending" />
<cfset arrayRequisition[k].Line_No = #i# />
这K
是每次添加和递增的行数。但是,当我这样做时出现错误:
“未找到数组字段 1”。
当我解决这个问题时,表格只显示最后一行。
<cfoutput>
<table border="1">
<tr>
<td style="font-weight:bold;">Part_Nbr </td>
<td style="font-weight:bold;">Description </td>
<td style="font-weight:bold;">Quantity </td>
<td style="font-weight:bold;">Status </td>
<td style="font-weight:bold;">Line_No</td>
</tr>
<cfdump var="#i#">
<cfloop from="1" to="#arrayLen(arrayRequisition)#" index="j">
<cfdump var="#arrayLen(arrayRequisition)#">
<tr>
<td>#arrayRequisition[j].Part_Nbr#</td>
<td>#arrayRequisition[j].Description#</td>
<td>#arrayRequisition[j].Quantity#</td>
<td>#arrayRequisition[j].Status#</td>
<td style="text-align:right;">#arrayRequisition[j].Line_No#</td>
</tr>
</cfloop>
</table>
</cfoutput>
据我了解,在两页之间的转换过程中,我之前的结构数据/数组数据丢失了。在这种情况下如何保留我的数组的值?