struts2的select标签用法实例分析

前端技术 2023/09/06 JSP

本文实例讲述了struts2的select标签用法。分享给大家供大家参考。具体如下:

项目中遇到个小问题,总结下。

关于struts2 select标签的使用。

struts2 中从别的表中遍历数据 填充进入下拉菜单 用<s:select>标签显示.

struts2的版本为2.1.8

<s:select
      list=\"\"
      name=\"\"
      value=\"\"
      headerKey=\"\"
      headerValue=\"\"
      listKey=\"\"
      listValue=\"\"
/>
(1)其中 list是必须具备的属性 list中可以存储map list set类型的数据

list 属性:通常是在action中定义的,必须是一个可以迭代的源,如为一个List, Map, Set等。如果是一个Map,那么map的key就对应于select标签中的value,map中的value就对应于select标签中的 option。而如果是一个List或者是一个Set,那么可以通过listKey和listValue指定。

(2)如果list为空headKey 和headValue不能为空.listKey和listValue:listKey即对应于select标签中的value, listValue即对应于select标签中的option

(3)name属性:即是表单中select的名称。

下面具体解释下各个属性的含义。

headerValue : 默认值value
headerKey :    默认name
list : 源数据 (可以在action方法里从数据库获取list)
name : 被选数据存放的位置(这里我方在对象obj的属性值userName中<需在action中定义该对象>)
listKey : 下拉选项的name
listValue : 下拉选项的value
value : 默认值

1.第一个例子:

复制代码 代码如下:
<s:select list=\"{\'aa\',\'bb\',\'cc\'}\" theme=\"simple\" headerKey=\"00\" headerValue=\"00\"></s:select>

2.第二个例子:
复制代码 代码如下:
<s:select list=\"#{1:\'aa\',2:\'bb\',3:\'cc\'}\"  label=\"abc\" listKey=\"key\" listValue=\"value\"  headerKey=\"0\" headerValue=\"aabb\">

3.第三个例子:

<%
java.util.HashMap map = new java.util.LinkedHashMap();
map.put(1,\"aaa\");
map.put(2,\"bbb\");
map.put(3,\"ccc\");
request.setAttribute(\"map\",map);
request.setAttribute(\"aa\",\"2\");
%>
<s:select list=\"#request.map\" label=\"abc\" listKey=\"key\" listValue=\"value\"
 value=\"#request.aa\" headerKey=\"0\" headerValue=\"aabb\"></
s:select
>

headerKey headerValue 为设置缺省值
4.第四个例子

public class Program implements Serializable {
  /**  serialVersionUID */
  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;
  }
}

 xxxextends extends ActionSupport {
  private List<Program> programs ;
    public List<Program> getPrograms() {
    return programs;
  }
  public void setPrograms(List<Program> programs) {
      this.programs = programs;
  }
}

在jsp页面

<s:select list=\"programs\" listValue=\"programName\" listKey=\"programid\" name=\"program\" id=\"program\"
headerKey=\"0l\" headerValue=\"\" value=\"bean.programid \"></s:select> 

其中:list=\"programs\"为在action里面的list,listValue=\"programName\"为<option value=\"xxx\">value</option>对应bean里面的字段programName
listKey=\"programid\"为<option value=\"xxx\",对应bean里面的字段programid,value=\"bean.programid\"为设定select被选中的值,s:select 会自动在 bean选中 key对应的值

希望本文所述对大家的Struts程序设计有所帮助。

本文地址:https://www.stayed.cn/item/15619

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。