下一页 1 2 3 4
下拉列表(Drop-Down List)
<h:selectone_menu>标记用于生成包含几个颜色选项的下拉列表。
<h:selectitem>标记包含在<h:selectone_menu>中,作为下拉列表的选项:
<f:use_faces>
<h:form formName="pform">
..........
<p><h:output_text value="Color:"/><br>
<h:selectone_menu id="color" valueRef="pbean.color">
<f:validate_required/>
<h:selectitem itemvalue="black" itemLabel="Black"/>
<h:selectitem itemvalue="red" itemLabel="Red"/>
<h:selectitem itemvalue="blue" itemLabel="Blue"/>
<h:selectitem itemvalue="green" itemLabel="Green"/>
</h:selectone_menu>
<br><h:output_errors for="color"/>
..........
</h:form>
</f:use_faces>
上面的JSP代码生成下面的HTML片断:
<form method="post" action="/usingjsf/faces/edit.jsp">
..........
<p>Color:<br>
<select name="color" size="1">
<option value="black">Black</option>
<option value="red">Red</option>
<option value="blue">Blue</option>
<option value="green" selected>Green</option>
</select>
<br>
..........
</form>
下拉列表定义为color,类型为字符串(String):
public class PBean implements java.io.Serializable {
..........
private String color;
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
..........
}
当HTML表单被生成时,JSF将HTML属性selected加入到值与JavaBean模型color属性相同的列表项中。假设没有验证错误,JSF收到包含新颜色值的用户输入后会刷新JavaBean属性。