自定义标记,用于从枚举创建select元素

时间:2010-11-02 20:54:12

标签: java tags playframework

如何制作一个标签,使Play的Java enum中的select字段成为可能!框架?我试图看看CRUD模块是如何做到的,但是有太多的抽象层我还不太了解。

2 个答案:

答案 0 :(得分:4)

如果您完全符合标签中的Enum,则无需将其放在RenderArgs中。

您的代码StatusSelect.html:

<select name="status">
    #{list com.something.StatusEnum.values(), as:'status'}
        <option>${status}</option>
    #{/list}
</select>

从页面调用:

#{StatusSelect /}

然后,您可以通过指定“名称”属性和其他功能(例如:

)来增加复杂性
<select id="${_id}" name="${_name}" class="${_class}">
    #{list com.something.StatusEnum.values(), as:'status'}
        <option>${status}</option>
    #{/list}
</select>

新页面标记:

#{StatusSelect id:'status1', name:'status', class:'bold'/}

答案 1 :(得分:0)

您也可以尝试将Damo的方法与枚举名称一起使用,然后使用框架的#{select} -tag。