1.if elseif else例子
<s:set name="age" value="31"/>
<s:if test=" #age > 60 ">
老年人
</s:if>
<s:elseif test="#age > 35">
中年人
</s:elseif>
<s:elseif test="#age > 15">
青年人
</s:elseif>
<s:else>
少年
</s:else>
2.一级下拉框
<h3>使用name和list属性,list属性的值是一个列表</h3>
<s:form>
<s:select label="最高学历" name="education" list="{'高中','大学','硕士','博士'}"/>
</s:form>
<h3>使用name和list属性,list属性的值是一个Map</h3>
<s:form>
<s:select label="最高学历" name="education" list="#{1:'高中',2:'大学',3:'硕士',4:'博士'}"/>
</s:form>
<h3>使用headerKey和headerValue属性设置header选项</h3>//第一个是选项会变成提示(header**)
<s:form>
<s:select label="最高学历" name="education" list="{'高中','大学','硕士','博士'}"
headerKey="-1" headerValue="请选择您的学历"/>
</s:form>
<h3>使用emptyOption属性在header选项后添加一个空的选项</h3>//会增加一个空选项
<s:form>
<s:select label="最高学历" name="education" list="{'高中','大学','硕士','博士'}"
headerKey="-1" headerValue="请选择您的学历"
emptyOption="true"/>
</s:form>
<h3>使用multiple属性设置多选</h3>//选择框会变大(一个默认值) 按住Ctrl键可以复选
<s:form>
<s:select label="最高学历" name="education" list="{'高中','大学','硕士','博士'}"
headerKey="-1" headerValue="请选择您的学历"
emptyOption="true"
multiple="true"/>
</s:form>
<h3>使用size属性设置下拉框可显示的选项个数</h3>
<s:form>
<s:select label="最高学历" name="education" list="{'高中','大学','硕士','博士'}"
headerKey="-1" headerValue="请选择您的学历"
emptyOption="true"
multiple="true" size="8"/>
</s:form>
<h3>使用listKey和listValue属性,利用Action实例的属性(property)来设置选项的值和选项的内容</h3>
<s:form>
<s:select label="最高学历" name="education" list="educations"
listKey="ids" listValue="name" />
</s:form>
//最后一个解释如下:
你还可以使用一个对象数组或一个对象Collection来作为选项的来源。此时,你将需要用到list、listKey和listValue属性。具体做法是:把那个数组或Collection赋值给list属性,把用来提供选项值的对象属性赋值给listKey属性,把用来提供选项行标的对象属性赋值给listValue属性。
例如,假设某个动作对象的getCities方法将返回一个以City对象为元素的List,而City对象有一个id和一个name属性,你就可以用如下所示的代码把这个List赋值给一个select标签:
3.二级联动下拉框
<s:form name="test" >//这个例子是联动的精髓 下面第二个需要套用第一个的方法
<s:doubleselect label="请选择所在省市"
name="province" list="{'四川省','山东省'}
doubleName="city" doubleList="top == '四川省' ? {'成都市', '绵阳市'} : {'济南市', '青岛市'}" />
</s:form>
<s:form action="doubleselectTag">
<s:doubleselect label="请选择所在省市"
name="province" list="provinces" listKey="id" listValue="name"
doubleName="city" doubleList="cities" doubleListKey="id" doubleListValue="name"
headerKey="-1" headerValue="---------- 请选择 ----------" emptyOption="true" />
</s:form>
4.optiontransferselect标签(非常厉害的标签 实现左右互选)
<s:form>
<s:optiontransferselect
label="最喜爱的图书"
name="book1"
leftTitle="Java图书"
rightTitle="C/C++图书"
list="{'《Java Web开发详解》', '《Struts 2深入详解》', '《Java快速入门》'}"
headerKey="-1"
headerValue="--- 请选择 ---"
emptyOption="true"
doubleName="book2"
doubleList="{'《VC++深入详解》', '《C++ Primer》', '《C++程序设计语言》'}"
doubleHeaderKey="-1"
doubleHeaderValue="--- 请选择 ---"
doubleEmptyOption="true"
addToLeftLabel="向左移动"
addToRightLabel="向右移动"
addAllToLeftLabel="全部左移"
addAllToRightLabel="全部右移"
selectAllLabel="全部选择"
leftUpLabel="向上移动"
leftDownLabel="向下移动"
rightUpLabel="向上移动"
rightDownLabel="向下移动"/>
</s:form>
<s:form>
<s:optiontransferselect
label="最喜爱的图书"
name="javaBook"
list="{'《Java Web开发详解》', '《Struts 2深入详解》', '《Java快速入门》'}"
doubleName="cBook"
doubleList="{'《VC++深入详解》', '《C++ Primer》', '《C++程序设计语言》'}"/>
</s:form>
</body>
5.复选框
//返回的是String[]
<s:form>
<s:checkboxlist name="interest" list="{'足球','篮球','排球','游泳'}" label="兴趣爱好"/>
</s:form>
6.updownselect标签//和多选下拉框效果差不多 但UI不一样
<s:form>
<!-- 使用简单集合来生成可上下移动选项的下拉选择框 -->
<s:updownselect name="a" label="请选择您喜欢的图书" labelposition="top" moveUpLabel="向上移动"
list="{'Spring2.0宝典' , '轻量级J2EE企业应用实战' , 'JavaScript: The Definitive Guide'}"/>
</s:form>