-
struts2的<s:select>的用法0
<s:select name="attend" list="#{0:'选择',1:'出勤',2:'缺席',3:'迟到',4:'早退'}" cssClass="select2"></s:select>
这样构成一个选择列表。但是,我觉得list里面的东西是可变的。如果每个页面都充斥着这样代码,日后可能很难维护。
我想把list的值放到静态方法里面,然后进行访问,结构报错。public static Map<String, Object> getAttendState(){ Map<String, Object> map = new HashMap<String, Object>(); map.put("0", "选择"); map.put("1", "出勤"); return map; }
在jsp里面使用<s:select name="attend" list="@com.util.StateHelp@getAttendState()" s:select>
结果出错了。如果把这些变量写在静态方法里面,然后在<s:select>里调用,该怎么写?谢谢
问题补充:并且对map进行排序2013年3月14日 16:28
3个答案 按时间排序 按投票排序
-
采纳的答案
List<Map> abc = new ArrayList<HashMap>() Map map1 = new HashMap(); Map map2 = new HashMap(); map1.put("KEY", "0"); map1.put("VALUE", "选择"); map2.put("KEY", "1"); map2.put("VALUE", "出勤"); abc.add(map1); abc.add(map2);
然后页面上面就可以只要写:
<s:select list="abc" listKey="KEY" listValue="VALUE"></s:select>2013年3月15日 15:24
-
把map作为成员变量 get和set一下
jsp中如下写:
<s:select list="map" listKey="key" listValue="value" headerKey="" headerValue=""></s:select>
试一试2013年3月15日 09:28
-
首先<s:select>中的属性list是只接受List<Map>形式的对象,而不是Map对象
以下是个人的修改意见:
1.你可以在你的静态方法里面,将map对象转化为JSON格式的字符串返回;
2.你可以在你的Action中定义一个共用的List<Map>对象,来存放下拉框的值,
例如:List<Map> abc = new ArrayList<HashMap>();
然后写一个初始化的方法,往该List里面存放下拉框的值,
另外,需要在Action中添加对应的get和set方法,
最后,你在页面上面就可以直接写成
<s:select list="abc" listKey="XXX" listValue="YYY"></s:select>
listKey和listValue指的就是map里面的key。2013年3月14日 17:03
相关推荐
Address private int aid; private String aname; public int getAid() { ... <s:select name="address" headerKey="-1" headerValue="请选择" list="lis" listKey="aid" listValue="aname" /> </s:form>
在JSP页面中,我们可以使用Struts2的标签库(例如`s:textfield`, `s:checkbox`, `s:select`等)来创建表单元素,并将这些元素与Action的属性绑定。对于集合类型,我们通常会在JSP中通过迭代器遍历并生成多个表单...
- `<s:select>` 用于创建下拉列表。 - 示例: ```xml <s:select tooltip="Chooseuser_type" label="" list="#{'free':'免费','vip':'会员'}" value="#{'free':''}" name="bean.user_type" emptyOption="true" ...
Struts2提供了一个非常强大的标签——`<s:select>`,它可以用来生成一个`<select>`下拉列表,并支持动态设置默认选中项。 #### 代码示例 假设我们需要根据用户提交的`auditingLog`对象中的`auditingState`属性值来...
<s:select list="#{1:'aa',2:'bb',3:'cc'}" label="abc" listKey="key" listValue="value" headerKey="0" headerValue="aabb"> ``` 这个例子中,`list`属性是用哈希映射表示的,键值对分别为1对应'aa',2对应'bb',3...
<p>名称:<s:property value="name"/></p> </s:iterator> ``` - **说明**:遍历一个集合或数组,并对每个元素执行标签体内的内容。 25. **`<s:label>`** - 显示标签。 - **示例**: ```jsp <s:label value=...
<%@ taglib prefix="s" uri="/struts-tags" %> 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. <s:a href=""></s:a>-----超链接,类似于html里的<a></a> 3. <s:...
### Struts2 实现分页及 `<s:bean>` 标签详解 #### 一、Struts2 分页概述 在 Java Web 开发中,为了提高用户体验并减轻服务器负担,通常采用分页技术来展示数据。Struts2 框架提供了一套强大的工具和标签库来帮助...
<%@ taglib uri="/struts-tags" prefix="s" %> 结合例子,重点掌握以下标签的用法 (1) <s:property> (2) <s:set> (3) <s:if> 、<s:elseif>、<s:else> (4) <s:iterator> (5) <s:include> (6) <s:form>、<s:hidden> (7...
以上只是Struts2标签库的一部分,实际使用中还有更多标签如`<s:textfield>`(文本输入框)、`<s:textarea>`(文本区域)、`<s:submit>`(提交按钮)等,每个都有其特定的用途,极大地简化了JSP页面的编写。...
-- 这里可以使用<s:iterator> --> </s:generator> ``` - **解释**:生成数据项,并使用逗号分隔。 ##### 24. `<s:head>` 头部标签 - **用途**:在`<head>`标签内使用。 - **示例代码**: ```xml <s:head> ...
除了`<s:textfield>`,Struts2还提供了多种表单标签,如`<s:password>`用于创建密码输入框,`<s:textarea>`用于创建多行文本输入框,`<s:radio>`和`<s:checkbox>`用于创建单选按钮和复选框,以及`<s:select>`用于...
- `<s:select>`:创建下拉列表,可以从Action的属性或静态资源中获取选项。 - `<s:if>`和`<s:else>`:条件判断,类似于JSP的`<c:if>`和`<c:else>`。 - `<s:iterator>`:迭代集合,如List或Map,用于显示列表数据...
本文将详细介绍`#`符号的使用方法及其应用场景,帮助读者更好地理解和掌握Struts2框架的相关知识。 #### 一、Struts2简介 Struts2是基于Struts1的基础上发展起来的一款开源Web应用框架,它使用MVC(Model-View-...
11. **Tiles Tags**: 如果使用了Tiles框架,Struts2也提供了与之配合的标签,如`<s: tiles>`,用于布局管理。 这些标签极大地提高了开发效率,减少了视图层与控制器层的交互复杂性。每个标签都配有示例,可以帮助...
在Struts2中,所有的标签都统一在`<s>`前缀下,通过引入`<%@ taglib prefix="s" uri="/struts-tags" %>`就可以在页面上使用这些标签。 **A组标签:** 1. `<s:a>` - 用于创建超链接,与HTML的`<a>`标签类似,可以...
- `<s:action>`:用于调用Struts2的动作,可以传递参数。 - `<s:if>`和`<s:else>`:条件语句,用于控制页面逻辑。 - `<s:iterator>`:迭代标签,用于遍历集合对象,如List、Set等。 - `<s:property>`:显示对象...
这篇博客将深入探讨Struts2中的表单标签及其使用方法。 首先,我们需要理解Struts2表单标签的基本结构。通常,一个表单标签以`<s:form>`开头,并以`</s:form>`结束。它允许我们指定表单的属性,如`action`(表单...
还可以配合`<s:textfield>`, `<s:textarea>`, `<s:checkbox>`, `<s:radio>`, `<s:select>`等子标签来创建输入元素。 4. **Control标签**:如`<s:if>`, `<s:else>`, `<s:choose>`, `<s:when>`, `<s:otherwise>`用于...
1. `<s:select>`:创建单选选择框,用于选择一个选项。 2. `<s:set>`:在特定范围内设置变量的值。 3. `<s:sort>`:对列表进行排序,可以自定义比较器。 这些标签极大地简化了Struts2应用中的视图层开发,提高了...