0

我在这里试图完成的是用一个项目列表填充一个多选框,这段代码完成了这部分工作。它没有做的是,如果我在列表中选择超过 1 个项目并尝试提交表单,它将不会保留在列表中选择的相同项目。

如果我只选择 1 个项目并提交一个项目确实保持选中状态的表单。这是我使用coldfusion的第一周,这是我的第一个障碍我确信在这一点上这是非常愚蠢和简单的事情,我忘记在这里做但是我整天都在编码并且我的眼睛在交叉。我希望有人会在这方面为我指明正确的方向

 <select id="equipmentstatus1" name="equipmentstatus1" multiple="multiple">
 <cfloop list="#trim(cfleqstatus)#" delimiters="#chr(13)##chr(10)#" index="data">
 <cfset counter++>
 <cfoutput><option value="#rows[counter][1]#" <cfif form.equipmentstatus1 EQ rows[counter][1]> selected="selected"</cfif>>#rows[counter][2]#</option></cfoutput>


 </cfloop>
 </select>

谢谢

4

1 回答 1

0

您的 FORM 值将包含项目列表,而不是单个项目。所以你需要改变你的 if 语句:

<cfif form.equipmentstatus1 EQ rows[counter][1]>

对此:

<cfif ListFind(form.equipmentstatus1, rows[counter][1])>

这将检查项目列表FORM.equipmentstatus1并尝试在该列表中找到当前行的值。如果找到它,它将返回 true。

于 2012-09-07T15:48:34.787 回答