Play Framework 构建 select 选项,包括无操作选项
Play Framework building select options including a no-op option
我正在创建一个带有 select 元素的搜索表单,其中 "Any" 作为第一个选项。其余选项是小部件 ID 和名称。
变量myWidgets
是三个实例的列表,我想要的结果是这样的:
<select id="widget" name="widget">
<option value="-1">Any</option>
<option value="10">Widget Ten</option>
<option value="20">Widget Twenty</option>
<option value="30">Widget Thirty</option>
<select>
这是我用来生成它的 Scala:
@helper.select(searchForm("widget"),
Seq[(String, String)](("-1", "Any")) ++
myWidgets.map(w => (new Tuple2[String, String](w.id.toString(), w.name)))
)
select()
的第二个参数取一个Seq[(String, String)]
。如图所示,但感觉很笨重。有没有更好(或更合适)的方法来做到这一点?
那么数据是从哪里来的呢?对于选择,我使用 MyEnum extends Enumeration,我的 MyEnum class 有一个方法,如:
def toHtml: Vector[(String, String)] =
("", "") +: super.values.toVector.map(m => (m.id.toString, m.toString))
在所有选择的顶部添加一个空白选项。
我正在创建一个带有 select 元素的搜索表单,其中 "Any" 作为第一个选项。其余选项是小部件 ID 和名称。
变量myWidgets
是三个实例的列表,我想要的结果是这样的:
<select id="widget" name="widget">
<option value="-1">Any</option>
<option value="10">Widget Ten</option>
<option value="20">Widget Twenty</option>
<option value="30">Widget Thirty</option>
<select>
这是我用来生成它的 Scala:
@helper.select(searchForm("widget"),
Seq[(String, String)](("-1", "Any")) ++
myWidgets.map(w => (new Tuple2[String, String](w.id.toString(), w.name)))
)
select()
的第二个参数取一个Seq[(String, String)]
。如图所示,但感觉很笨重。有没有更好(或更合适)的方法来做到这一点?
那么数据是从哪里来的呢?对于选择,我使用 MyEnum extends Enumeration,我的 MyEnum class 有一个方法,如:
def toHtml: Vector[(String, String)] =
("", "") +: super.values.toVector.map(m => (m.id.toString, m.toString))
在所有选择的顶部添加一个空白选项。