struts2 select标签对Action中传递过来的List集合生成下拉列表
来源:互联网 发布:华为双卡默认移动数据 编辑:程序博客网 时间:2024/05/16 07:08
说说最简单的<s:selelct />其他的以此类推:·select标签必须属性只有一个为List·select一定要有值,否则出错。如果我们在html中使用select时会有个默认的值,在Struts2中也是一样的,如果List,没有值可以加上headerKey,headerValue就可以通过。·List属性的值在Action中定义,必须为一个迭代的List/Map/Set,本例采用List· listKey对应html表单select中的value,listValue对应html表单中的option·List/Set的listKey和listValue是一样的·如果是Map,则map的key对应key,map的value对应value 如下代码:<body> <s:form action="admin/admin_add_Course"> <s:textfield name="course.name" label="课程名"/> <s:textfield name="course.score" label="课程学分"/> <s:select list="myClassList" name="myClass.myClassId" label="班级" listKey="myClassId" listValue="myClassId" headerKey="0" headerValue="---请选择班级---"/> <s:select list="{'是','否'}" name="course.firstTerm" label="是否上学期" headerKey="0" headerValue="---请选择学期---"/> <s:textfield name="course.year" label="年度"/> <s:submit value="添加"/> </s:form> </body> myClassList为action中list的对象,也就是getter/setter方法的名字,Struts2支持POJO访问,listKey的值”myClassId”则为VO对象 (MyClass)的属性
(myClassId)(Struts2支持OGNL)我们还可以加上headerKey和headerValue用以显示首行的提示,大家可以加上试试,注意:headerKey的值不能为-1否则编译不能通过。