Struts2 s:select标签的使用 | 您所在的位置:网站首页 › select标签的用法 › Struts2 s:select标签的使用 |
list参数设置你的list变量名,如果你的list放的是实体类(包含key和value两个字段)的话可以 就会显示value然后值是key的select下拉框 1.第一个例子: 2.第二个例子: 3.第三个例子: headerKey headerValue 为设置缺省值 摘抄自 http://www.cnblogs.com/modou/articles/1326683.html 4.第四个例子 public class Program implements Serializable { private static final long serialVersionUID = 1L; private int programid; private String programName; public int getProgramid() { return programid; } public void setProgramid(int programid) { this.programid = programid; } public String getProgramName() { return programName; } public void setProgramName(String programName) { this.programName = programName; } } 在 xxx extends extends ActionSupport { private List programs ; public List getPrograms() { return programs; } public void setPrograms(List programs) { this.programs = programs; } } 在jsp页面 红色部分为在action里面的list,黄色为value对应bean里面的字段programName 绿色为 testList.jsp页面: ***注意引入struts2的标签库 解析上面的代码: 标签,解释下这个标签属性: (1)struts2中的select 标签中,必须设置的属性只有一个,即是list。 (2)select标签的list中必须有值,不然会报错。如果没有值,可以加上headerKey, headerValue,这样就可以通过了。 headerValue : 默认值value headerKey : 默认name 即使list中有值,我们也通常会加上headerKey, headerValue,即列表中显示的第一个选项。注意,headerKey不可以为空,不可以为-1 list : 通常是在action中定义的,必须是一个可以迭代的源,如为一个List, Map, Set等。如果是一个Map,那么map的key就对应于select标签中的value,map中的value就对应于select标签中的option。而如果是一个List或者是一个Set,那么可以通过listKey和listValue指定。 name : 被选数据存放的位置(action中可以通过name值获取我们所选中的值) listKey : 下拉选项的name listValue : 下拉选项的value listKey即对应于普通select标签中的value值, listValue即对应于普通select标签中的option所显示的值 value : 默认值 一个下拉列表往往是可以重复使用的,那么我们将它单独定义到一个action中,这里我的action的namespace是servicemanage,所以如我们上面定义的标签: name : 源数据名(这里我的为 servicerelease!getServiceRelease ,也就是名称空间!action名(注意是感叹号)) namespace : 我们在struts.xml中定义的name(我定义的为 servicerelease) id : 相当于别名(在后面调用该actiond的时候直接用#号使用) Struts2 select标签值从数据库读取,再提交给action 问题描述: addpost.jsp页面有post的相关信息,如post.id,post.name,和post.cid(所属栏目信息column.id)。所属栏目id通过select标签来选择,其list值来自columnAction获得的栏目list。然后post所有信息提交到PostAction的insert方法来处理,完成添加post工作。 解决方法: 1.在columnAction中添加方法findAllColumns(),返回一个column的list。 public String findAllColumns(){ try { columnList=columnService.findAllColumn(); } catch (SQLException e) { e.printStackTrace(); return "error"; } return null; } 2.配置struts.xml 3. addpost.jsp页面 4. PostAction的insert方法 public String insertPost(){ try{ Date date = Calendar.getInstance().getTime(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateString = formatter.format(date); HttpSession session = ServletActionContext.getRequest().getSession(); Users user=(Users) session.getAttribute("user"); posts.setUid(user.getId()); posts.setPdate(dateString) ; postService.safePosts(posts); return "addPost"; }catch (Exception e){ e.printStackTrace(); return "Error"; } } |
CopyRight 2018-2019 实验室设备网 版权所有 |