1.第一种:
<s:select list="{'aa','bb','cc'}" headerKey="00" headerValue="0"></s:select>
2.第二种:
<s:select list="#{1:'aa',2:'bb',3:'cc'}" label="abc" listKey="key" listValue="value" headerKey="0" headerValue="-1">
3.第三种(从数据库读数据)
action中:
public class ServiceRelease {
private ProvidingService ps;
private List<ProvidingService> listPS = new ArrayList<ProvidingService>();
生成get()/set()方法
public String getServiceRelease(){//action,页面会调用此action
listPS = serviceManageService.getService(); //getService(); 是我查询数据库所有服务的方法
return "test"; //通过struts2跳转页面
}
}
struts2.xml文件中:
<package name="servicemanage" extends="default" namespace="/servicemanage">
<action name="servicerelease" class="serviceRelease"><!--serviceRelease我是通过spring配置action路径的,这可以直接写,如:com.hp.cop.servicemanage.action.ServiceRelease-->
<result name="test">
/testList.jsp <!--跳到testList.jsp页面-->
</result>
</package>
testList.jsp页面:
<body>
<s:action name="servicerelease!getServiceRelease" namespace="/servicemanage" id="bean" />
<s:select headerValue="--Please select--" headerKey="0"
list="#bean.listPS" name="" listKey="id" listValue="serviceName"></s:select>
</body>
***注意引入struts2的标签库
<%@ taglib prefix="s" uri="/struts-tags"%>
解析上面的代码:
<s:select>标签,解释下这个标签属性:
(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,所以如我们上面定义的<s:action>标签:
name : 源数据名(这里我的为 servicerelease!getServiceRelease ,也就是 名称空间!action名(注意是感叹号))
namespace : 我们在struts.xml中定义的name(我定义的为 servicerelease)
id : 相当于别名(在后面调用该actiond的时候直接用#号使用)
分享到:
相关推荐
struts2 <s:if>标签使用struts2 <s:if>标签使用struts2 <s:if>标签使用struts2 <s:if>标签使用struts2 <s:if>标签使用struts2 <s:if>标签使用
struts2.0中s:datetimepicker标签使用范例
主要介绍了jsp 开发之struts2中s:select标签的使用的相关资料,需要的朋友可以参考下
Struts 2 技术详解:基于WebWork核心的MVC开发与实践
struts2实现页面select标签默认选中,很简单的,一看马上就会了
这个是自己试验的实例,不多,只有s:textfield和s:select。里面有注释,页面、xml和action里的注释序号都是相互对应的。jar都在,直接去掉注释就可以运行。我用的开发环境是jdk5和myeclipes5
jsp 开发之struts2中s-select标签的使用.docx
如果对象是当前页面的,则要使用# 1. <s:bean id="locales" name="com.turorial.Locales" >...</s:bean> <s:property value="#locales"/>
NULL 博文链接:https://shupili141005.iteye.com/blog/667446
这是一份让你可以理解JavaWeb开发中如何使用struts2对下拉列表数据初始化,对于初学Struts2的同学是非常不错的入门代码实例,并且有助于理解struts里的select标签与c:forEach标签之间的关系。
struts 2 s标签 a标签创建一个HTML超链接,等价于HTML 的 示范代码: <s:a href="login.action">登陆</s:a>
Struts2中关于s:tree标签的使用,详细的例子说明,带图片演示
struts2中select从action中动态获得,访问jsp页面时候,先要请求action,得到select标签的内容!
struts2中s:radio标签的使用总结 遇到的问题:在使用该标签时,设置了默认选中项,但提交数据返回后,单选框不能显示之前选中的项,仍然为默认选项 通过测试得出以下结论: 以<s name=”user.sex” list=”%{#{‘1′...
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>
<%@ 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技术内幕:深入解析Struts2架构设计与实现原理》还深入挖掘并分析了Struts2源代码实现中蕴含的大量值得称道的编程技巧和设计模式,这对开发者从Struts2的设计原理上去掌握和悟透Web层开发的...
NULL 博文链接:https://zxymicky.iteye.com/blog/1536476
struts2标签库struts2标签库struts2标签库struts2标签库