<ww:select />
生 成一个SELECT选项列表. quot;listKey"属性是列表中每个元素的用于生成<option>标签中value的属性. "listValue"属性填充option的文本标签(显示名称). 一大特性是根据"value"属性自动选中适当的选项. 如果value于当前listKey相等, 该选项设为selected(如果类型符合的话; 见下文).
<ww:select label="'Users'"
name="'userId'"
listKey="id"
listValue="name"
list="app.users"
value="app.user.id"
οnchange="'chooseUser(this)'"
/>
将生成下列结果(假设getApp().getUser().getId() == 2):
<tr>
<td>Users</td>
<td>
<select name="userId" οnchange="chooseUser(this)">
<option value="1">
User Number One
</option>
<option value="2" selected="selected">
User Number Two
</option>
</select>
<td>
</tr>
当然, <td>等格式依赖于你使用的模版.
用法示例
<ww:select label="'Pets'"
name="'petIds'"
list="petDao.pets"
listKey="id"
listValue="name"
multiple="true"
size="3"
required="true"
/>
<ww:select label="'Months'"
name="'months'"
list="#{'01':'Jan', '02':'Feb', [...]}"
value="selectedMonth"
required="true"
/>
// The month id (01, 02, ...) returned by the getSelectedMonth() call
// against the stack will be auto-selected
注意: 对于任何使用列表数据的标签(select可能是最常见的), 它使用OGNL的列表表示法(参见上面的例子"months"), 注意的是, 这里键值(在months例子中是'01', '02'等等)是手工输入的. '1'是字符, '01'是字符串, "1"是字符串. 如果"value"属性返回的值和"列表"中的键值类型不同时, 即使字符串值相同, 也无法匹配. 如果无法匹配, 列表中将没有自动选中的选项.属性 名字 必需 描述
id 否 HTML的id属性
name 是 HTML的name属性
value 否 字段值
list 否 列表使用的可迭代数据源, 如果烈表是Map (key, value), key将作为option的value, value作为它的内容(body)
listKey 否 列表对象的键值属性
listValue 否 列表对象的内容属性
headerKey 否 第一个选项的建值
headerValue 否 第一个选项的值
emptyOption 否 是否在选项头(header option)后加入空白(--)选项
multiple 否 是否允许多选?
size 否 HTML的size属性
disabled 否 HTML的disabled属性
tabindex 否 HTML的tabindex属性
onchange 否 HTML的onchange属性
onclick 否 HTML的onclick属性
label 否 用于模版中的标签文字
labelposition 否 标签的对齐方式 (left,right,center)
required 否 在表单提交时是否是必需字段
cssClass 否 HTML的class属性
cssStyle 否 HTML的style属性
theme 否 使用的主题
template 否 使用的模版名