在项目中经常要使用下拉列表给用户自行选择,在下拉列表重有两个重要的属性,key和value,对于一般的比较少的可以在页面全部定义,但是对于类似省份,城市,部门之类的比较多就需要根据条件在后台进行查询,然后在页面展示了,废话不说,直接上demo。 主要介绍使用LabelValueBean(key,value)
List<Dx> dxList = dxService.getdx(id); //通过条件查询到一个对象的集合List
List<LabelValueBean> list = new ArrayList<LabelValueBean>();
//遍历该对象,拿到每个对象中的下拉列表需要使用的数据元,并将数据元放到LabelValueBean中
for(Dx dx : dxList){
list.add(new LabelValueBean(dx.getKey(),dx.getValue()))
}
//然后将list放到作用域当中 或者使用任何方法传到前台页面就行
request.setAttribute("list",list);
<!-- 在jsp页面这样使用 这样,就会在下拉列表中展示value 而通过取值可以拿到他的key,因为key是我们需要进行逻辑判断的,而value只是作为展示-->
<novo:select listName="list" property="key"
styleId="key" styleClass="select-box" style="width:120px">
<html:option value="">--请选择--</html:option>
<novo:options collection="list" property="value" labelProperty="label" />
</novo:select>
好了 页面已经展示到你的下拉列表定义了,通过js可以直接取到用户选择的key和value, 便于进行后续判断开发。