1. s:property标签
××:<s:property value="name" />
value属性不是必须的。如果指定了value属性,则输出value属性指定的属性的值。如果没有指定,则输出值栈栈顶的值,如果值栈栈顶是一个对象,则直接输出次对象,具体要看该对象的toString()方法。
2. s:date标签
生日:<s:date name="date" format="yyyy-MM-dd HH:mm:ss"/>
name属性必需,指定需要格式化的日期值,具体怎么写,因为经常用在表单回显时,所以与表单回显时获取值栈对象时的写法一致。
备注:input标签的type属性也可以是date,用于接收一个Date对象.
3. s: checkboxlist标签(复选框),s:radio(单选框),s:select(下拉列表),这三个用法一样
以s:select为例:
在action方法中代码如下:
List<User> userList = new ArrayList<User>();
List<String> stringList = new ArrayList<String>();
Map<String, Object> StringMap = new HashMap<String, Object>();
stringList.add("aaa");
stringList.add("bbb");
userList.add(new User("zhangsan"));
userList.add(new User("lisi"));
StringMap.put("显示1", "值1");
StringMap.put("显示2", "值2");
ActionContext.getContext().getSession().put("StringMap", StringMap);
ActionContext.getContext().getSession().put("stringList", stringList);
ActionContext.getContext().getSession().put("userList", userList);
通过struts.xml文件配置跳转到的xml文件代码如下:
<s:debug></s:debug>
<s:select list="#session.stringList" name="a" multiple="true"
labelposition="left">
<s:label labelposition="top">选择图书:</s:label>
</s:select>
<br>
<s:select list="#session.StringMap" name="a" multiple="true"
labelposition="left" listKey="value" listValue="key">
<s:label labelposition="top">选择图书:</s:label>
</s:select>
<br>
<s:select list="#session.userList" name="a" multiple="true"
labelposition="left" listKey="name" listValue="name">
<s:label labelposition="top">选择图书:</s:label>
</s:select>