【Struts2六】ui标签之form标签及数据回显
2015-07-16 10:22
453 查看
ui标签:用在jsp页面用于回显数据的标签,这些标签是由框架定义的,用来替代原生的标签!
ui标签有:
<s:textfield name="xxx"></s:textfield>
<s:password name="xxx" showPassword="trus"></s:password>
<s:select name="xxx" list="xx" listKey=.. listValue=.. headerValue=..><s/select>
<s:checkboxlist list= "#pList" name="pid" listKey="pid" listValue="pname" ></s:checkboxlist>
需要回显的数据要放在valueStack中,可以放在map栈中,也可以放在对象栈中;
放对象栈中有两种情况:
一是将数据封装成bean,将bean放在对象栈中;
二是给action设置属性,action的属性就在对象栈中;
1.Action中放入数据:
[align=left]
[/align]
[align=left]
[/align]
[align=left]2.配置文件:struts-ui.xml:[/align]
[align=left]
[/align]
[align=left]2.jsp页面利用struts标签回显数据:[/align]
[align=left] 在jsp页面引用ui标签时,要加上:[/align]
[align=left]<%@ taglib uri="/struts-tags" prefix="s"%>[/align]
[align=left][/align]
[align=left][/align]
[align=left]
[/align]
[align=left]效果图:[/align]
[align=left][/align]
[align=left]
[/align]
[align=left]翻译过后的源代码:[/align]
ui标签有:
<s:textfield name="xxx"></s:textfield>
<s:password name="xxx" showPassword="trus"></s:password>
<s:select name="xxx" list="xx" listKey=.. listValue=.. headerValue=..><s/select>
<s:checkboxlist list= "#pList" name="pid" listKey="pid" listValue="pname" ></s:checkboxlist>
需要回显的数据要放在valueStack中,可以放在map栈中,也可以放在对象栈中;
放对象栈中有两种情况:
一是将数据封装成bean,将bean放在对象栈中;
二是给action设置属性,action的属性就在对象栈中;
1.Action中放入数据:
public class UIAction extends ActionSupport{ [align=left] private String username;[/align] [align=left] private String password;[/align] public String getUsername() { [align=left] return username ;[/align] [align=left] }[/align] [align=left] [/align] public void setUsername(String username) { this.username = username; [align=left] }[/align] [align=left] [/align] public String getPassword() { [align=left] return password ;[/align] [align=left] }[/align] [align=left] [/align] public void setPassword(String password) { this.password = password; [align=left] }[/align] [align=left] /**[/align] [align=left] * 1.在表单中回显数据:数据位于对象栈中,直接根据表单元素的name数据就可以回显![/align] [align=left] * 用户名:<s:textfield name="username"></s:textfield><br/>[/align] [align=left] 密码:<s:password name="password" showPassword="true"></s:password><br/>[/align] [align=left] * @return[/align] [align=left] */[/align] public String showDataFromObjStack(){ [align=left] User user = new User();[/align] [align=left] user.setPassword( "aaa");[/align] [align=left] user.setUsername( "bbb");[/align] [align=left] ActionContext. getContext().getValueStack().push(user);[/align] [align=left] return "user_objstack" ;[/align] [align=left] }[/align] [align=left] /**[/align] [align=left] * 从map栈中回显数据,s:textfield的value属性不能直接跟 ognl表达式,所以需要加%{ ognl表达式}[/align] [align=left] *[/align] [align=left] * 用户名:<s:textfield name=" username" value="%{#user.username}"></s:textfield><br/>[/align] [align=left] 密码: <s:password name="password" showPassword="true" value="%{#user.password}"></s:password><br/>[/align] [align=left] * @return[/align] [align=left] *[/align] [align=left] */[/align] public String showDataFromMap(){ [align=left] User user = new User();[/align] [align=left] user.setPassword( "111");[/align] [align=left] user.setUsername( "zhangsan");[/align] ActionContext. getContext().put("user", user); [align=left] return "user_map" ;[/align] [align=left] }[/align] [align=left] /**[/align] [align=left] * Action中的属性位于对象栈中,在回显时可以直接使用value来回显:[/align] [align=left] * 用户名:<s:textfield name="username"></s:textfield><br/>[/align] [align=left] 密码: <s:password name="password" showPassword="true" ></s:password><br/>[/align] [align=left] * @return[/align] [align=left] */[/align] public String showDataFromActionProperty(){ [align=left] this.username = "lisi" ;[/align] [align=left] this.password = "asfd" ;[/align] [align=left] return "user_actionproperty" ;[/align] [align=left] }[/align] [align=left] [/align] [align=left] /**[/align] [align=left] * 使用s:select标签来显示下拉选择框,必须有list属性;[/align] * jsp:选择省份:<s:select name=" pid" list="#pList" listKey="pid" listValue="pname" headerKey="" headerValue="请选择省份"></s:sele 16050 ct> <br/> [align=left] * 翻译后的代码:[/align] [align=left] * 选择省份:[/align] [align=left] <select id="uiAction_form_action_pid" name="pid">[/align] [align=left] <option value="">请选择省份 </option>[/align] [align=left] <option value="1">北京市 </option>[/align] [align=left] <option value="2">上海市 </option>[/align] [align=left] <option value="3">重庆市 </option>[/align] [align=left] </select>[/align] [align=left] * @return[/align] [align=left] */[/align] public String putDataToSelect(){ [align=left] List<Privice> pList = new ArrayList<Privice>();[/align] [align=left] Privice privice1 = new Privice();[/align] [align=left] privice1.setPid(1L);[/align] [align=left] privice1.setPname( "北京市");[/align] [align=left] [/align] [align=left] Privice privice2 = new Privice();[/align] [align=left] privice2.setPid(2L);[/align] [align=left] privice2.setPname( "上海市");[/align] [align=left] [/align] [align=left] Privice privice3 = new Privice();[/align] [align=left] privice3.setPid(3L);[/align] [align=left] privice3.setPname( "重庆市");[/align] [align=left] [/align] [align=left] pList.add(privice1);[/align] [align=left] pList.add(privice2);[/align] [align=left] pList.add(privice3);[/align] [align=left] [/align] [align=left] //放在map栈中;[/align] ActionContext. getContext().put("pList", pList); [align=left] [/align] [align=left] return "select_map" ;[/align] [align=left] }[/align] [align=left]}[/align] |
[/align]
[align=left]
[/align]
[align=left]2.配置文件:struts-ui.xml:[/align]
[align=left]<?xml version= "1.0" encoding ="UTF-8" ?>[/align] [align=left]<!DOCTYPE struts PUBLIC[/align] "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" [align=left] "http://struts.apache.org/dtds/struts-2.0.dtd">[/align] [align=left]<struts>[/align] [align=left] <package name="ui" namespace="/" extends="struts-default" >[/align] [align=left] <action name= "uiAction_*" method ="{1}" class="cn.itheima03.struts2.ui.UIAction" >[/align] [align=left] <result name="user_objstack" >ui/ui.jsp</ result>[/align] [align=left] <result name= "user_map">ui/ui.jsp </result>[/align] [align=left] <result name="user_actionproperty" >ui/ui.jsp</ result>[/align] [align=left] <result name="select_map" >ui/ui.jsp</ result>[/align] [align=left] </action>[/align] [align=left] </package >[/align] [align=left]</struts>[/align] |
[/align]
[align=left]2.jsp页面利用struts标签回显数据:[/align]
[align=left] 在jsp页面引用ui标签时,要加上:[/align]
[align=left]<%@ taglib uri="/struts-tags" prefix="s"%>[/align]
[align=left][/align]
[align=left][/align]
[align=left]<%@ page language="java" import= "java.util.*" pageEncoding="UTF-8" %>[/align] [align=left]<%@ taglib uri="/struts-tags" prefix= "s"%>[/align] <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> [align=left]<html>[/align] [align=left] <body >[/align] [align=left] <s:form action= "uiAction_form.action">[/align] [align=left] <!--[/align] [align=left] cssClass相当于 html标签中的class[/align] [align=left] -->[/align] [align=left] [/align] [align=left] 用户名: <s:textfield name="username" ></s:textfield>< br/>[/align] [align=left] 密码: <s:password name= "password" showPassword="true" ></s:password ><br/>[/align] [align=left] <!--[/align] [align=left] list是select填充数据的来源[/align] [align=left] list后面能直接跟 ognl表达式[/align] [align=left] listKey是option中value的值[/align] [align=left] listValue是要显示的值[/align] [align=left] headerValue顶部要显示的内容[/align] [align=left] -->[/align] [align=left] [/align] <!-- s:select标签 --> [align=left] 选择省份: <s:select name= "pid" list="#pList" listKey="pid" listValue="pname" headerKey="" headerValue= "请选择省份" ></s:select>< br/>[/align] [align=left] [/align] <!-- checkboxlist 标签 --> [align=left] 省份: <s:checkboxlist list= "#pList" name="pid" listKey="pid" listValue="pname" ></s:checkboxlist>[/align] [align=left] </s:form>[/align] [align=left] </body >[/align] [align=left]</html>[/align] |
[/align]
[align=left]效果图:[/align]
[align=left][/align]
[align=left]
[/align]
[align=left]翻译过后的源代码:[/align]
[align=left]<body>[/align] <form id="uiAction_form_action" method="post" action="/itheima03_struts2/uiAction_form.action" name="uiAction_form_action"> 用户名: <input id="uiAction_form_action_username" type="text" value="" name="username"> <br> 密码: <input id="uiAction_form_action_password" type="password" value="" name="password"> <br> 选择省份: <select id="uiAction_form_action_pid" name="pid"> <option value="">请选择省份</option> <option value="1">北京市</option> <option value="2">上海市</option> <option value="3">重庆市</option> </select> <br> 省份: <input id="pid-1" type="checkbox" value="1" name="pid"> <label class="checkboxLabel" for="pid-1">北京市</label> <input id="pid-2" type="checkbox" value="2" name="pid"> <label class="checkboxLabel" for="pid-2">上海市</label> <input id="pid-3" type="checkbox" value="3" name="pid"> <label class="checkboxLabel" for="pid-3">重庆市</label> <input id="__multiselect_uiAction_form_action_pid" type="hidden" value="" name="__multiselect_pid"> </form> </body> |
相关文章推荐
- JQuery+Strusts1.x无刷新登录
- 表格标签table深入了解
- WEB标准网页布局中尽量不要使用的HTML标签
- 插件管理框架 for Delphi(一)
- web标准知识――用途相似的标签
- 使用CSS框架布局的缺点和优点小结
- h1标签的使用技巧
- 列举PHP的Yii 2框架的开发优势
- Windows窗体的.Net框架绘图技术实现方法
- 浅谈JavaScript 框架分类
- JS刷新框架外页面七种实现代码
- 超赞的动手创建JavaScript框架的详细教程
- HTML代码中标签的全部属性 中文注释说明
- jquery 实现两Select 标签项互调示例代码
- jQuery获取标签文本内容和html内容的方法
- JavaScript获取并更改input标签name属性的方法
- css样式标签和js语法属性区别
- asp.net4.0框架下验证机制失效的原因及处理办法
- struts2 jquery 打造无限层次的树
- 插件管理框架 for Delphi(二)