搜索了几个小时后......我从这个问题中找到了问题的答案:How to populate a select list using a structure inside select HTML helper in ColdBox?
这个例子非常完美,因为我无法在ColdBox Doc上找到任何内容。我使用“简单形式”作为我的选项...结果显示是正确的。但是,当值为“”时,selectedValue似乎不起作用。我也尝试从数组填充选项。设置selectedValue时,我对这两种方法都有同样的问题。
当值为“”时,选项中的第一个值始终被选中。如何修复此问题或如何更改选项以在selectedValue为何时显示“选择...”?
#html.select(
name="Approved",
options="Yes,No,Pending",
column="value",
selectedValue="",
label="",
required="required",
title="Approved"
)#
答案 0 :(得分:0)
您需要创建一个包含空白选项的名称和值对的对象数组,以及其余选项:
<cfset foo = [
{"name"= "Select", "value"= ""}
, {"name"= "Yes", "value"= "Yes"}
, {"name"= "No", "value"= "No"}
, {"name"= "Pending", "value"= "Pending"}
] />
使用select
将数组传递给html.options()
辅助函数
方法
#html.select(
name="Approved",
options=html.options(foo),
selectedValue="",
label="",
required="required",
title="Approved"
)#
注意:在这种情况下,您无需提供column
属性。
这可以解决您的问题。