html:link
来源:互联网 发布:阿里云ddns教程 编辑:程序博客网 时间:2024/04/28 22:18
html:link标签生成一个锚点(<a>)元素。我从html:link标签如何构造基本url和如何构造query参数两个方面来介绍这个标签。
构造基本url是依据该标签的如下四个属性进行的,这四个属性一次只能出现一个。让我们看看它们:
forward,指定一个全局ActionForward的名称。另外如果forward是module相关的则该forward必须指向一个action而不能是一个页面。
action,指定一个Action的名称。
href,struts会直接使用这个值而不会对其进行任何处理。
page,指定一个页面的路径,必须以/开始。
构造query参数,下面列举了可能的形式,其中baseurl只是一个占位符:
baseurl?p=00001(单参单值)
baseurl?p1=00001&p2=00002&p3=00003(多参单值)
baseurl?p=00001&p=00002&p=00003(单参多值)
baseurl?p1=00001&p2=00002&p=00001&p=00002&p=00003(混合)
下面我们以代码示例来说明每一种html:link的用法,首先让我们花点时间看看相关action中的代码:
<!-- 下面所有代码的数据都是在这里构造的 -->
public ActionForward execute(ActionMapping mapping,ActionForm form,
HttpServletRequest request,HttpServletResponse response) {
DataForm dataForm = (DataForm) form;
dataForm.setParam("00001");
HashMap paramSingleMap = new HashMap();
paramSingleMap.put("p1","00001");
paramSingleMap.put("p2","00002");
paramSingleMap.put("p3","00003");
dataForm.setParamSingleMap(paramSingleMap);
HashMap paramMultiMap = new HashMap();
paramMultiMap.put("p",new String[]{"00001","00002","00003"});
dataForm.setParamMultiMap(paramMultiMap);
HashMap paramSMMap = new HashMap();
paramSMMap.put("p1","00001");
paramSMMap.put("p2","00002");
paramSMMap.put("p",new String[]{"00001","00002","00003"});
dataForm.setParamSMMap(paramSMMap);
List<Person> persons = new ArrayList<Person>();
Person person1 = new Person();
person1.setId("00001");
person1.setName("赵辰");
Person person2 = new Person();
person2.setId("00002");
person2.setName("李为芳");
Person person3 = new Person();
person3.setId("00003");
person3.setName("王微");
persons.add(person1);
persons.add(person2);
persons.add(person3);
dataForm.setPersons(persons);
return mapping.findForward("success");
}
<!-- 这用来设置一个位置 -->
<html:link linkName="top"/>
<!-- 这用来定位到上面的那个位置 -->
<html:link page="/link.do" anchor="top">Go Top</html:link>
<html:link page="/link.do" paramId="p" paramName="dataForm"
paramProperty="param">
单参单值
</html:link><br/>
<html:link page="/link.do" name="dataForm" property="paramSingleMap">
多参单值
</html:link><br/>
<html:link page="/link.do" name="dataForm" property="paramMultiMap">
单参多值
</html:link><br/>
<html:link page="/link.do" name="dataForm" property="paramSMMap">
混合
</html:link>
下面的代码示例了html:link标签的indexed属性和indexId属性的用法,这两个属性只有html:link标签嵌套在logic:iterate标签中时才可用。
<logic:iterate id="person" name="dataForm" property="persons">
<html:link action="/link.do" paramId="person" paramName="person"
paramProperty="id" indexed="true" indexId="number">
person
</html:link>
<br/>
</logic:iterate>
<!-- 下面是上面代码的运行结果(产生的html)
<a href="/struts-demo/link.do?person=00001&number=0">赵辰</a><br/>
<a href="/struts-demo/link.do?person=00002&number=1">李为芳</a><br/>
<a href="/struts-demo/link.do?person=00003&number=2">王微</a><br/>
其中的number是由indexId="number"确定的,而该参数的值为元素在集合中的位置。
-->
html:rewrite标签和html:link标签类似只是不生成锚点(<a>),而是简单的输出字符串。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/AWUSOFT/archive/2008/05/16/2452874.aspx
- html:link
- html:link
- html:link
- Struts - Html:link
- HTML link 标签
- <html:link 解析
- Struts标签 - html - link
- html link rel rev
- HTML link标签
- html:link的使用
- HTML link 标签
- html:link 的用法
- HTML link Tag
- HTML标签之link
- html:link 标签
- HTML的link标签
- HTML link相关 属性
- YII-link html- Options
- 转载:GPRS管理与创建APN拨号连接 (c++)
- html:checkbox
- Archlinux 启动脚本分析(一) -- /etc/inittab
- html:radio
- html:multibox
- html:link
- 【转】Windows Mobile 锁定设备
- html:errors
- 日记090815
- html:javascript
- html:xhtml
- logic:iterate
- 通过ASP实现flash对数据库的访问
- logic:present