Struts1之HTML标签库详解

  • 格式:doc
  • 大小:38.50 KB
  • 文档页数:4

Struts1之HTML标签库详解1
2010-05-09 15:19
Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。

标签的公共特征
使用固定属性名称的Struts 标签:
Struts 标签也支持嵌套引用,例如:
虽然Struts 标签的设计原意是为了避免使用scriptlet,scriptlet的表达式还能够提供给所有的Struts 标签使用。

但请确保使用完整的表达式:
Html 标签库
1.<html>标签
它有两个属性:locale和xhtml,两者都不是必需的。

2.说明:生成的结果取决于Struts应用程序所位于的服务器的locale。

如果你将应用程序部署到一
个不同locale的服务器,你不需要改变代码,Locale会自动调整。

3.<base>标签:表示所包含页面的绝对位置。

这个标签只有内嵌在head标签中才有效。

4.<img>标签
最重要的属性page:图象文件的路径,前面必须带有一个斜线。

其它属性:heignt、width、alt。

5.<link>标签
6.<errors>标签:通过一个简单的<html:errors/>标签,你就可以在一个JSP页面上显示完全自定义的错误信息。

功能超强大!!
说明:这个标签在Request对象的属性集合中查找reserved key。

如果它找到一个reserved key,它就假设这个key是一个String、或是一个String数组
(它包含在模块的MessageResources中查找的message keys)、或是类型为
org.apache.struts.action.ActionErrors的一个对象。

如果在应用程序资源中存在相应的信息,那么就可以用下面这些可选的message keys:
· errors.header or errors.prefix:相应的信息在错误信息的单独列表前显示。

· errors.footer or errors.suffix:相应的信息在错误信息的单独列表后显示。

7.<form>标签系列
使用<form>标签时必须遵循一些规则:
1.标签中必须包含一个action属性,它是这个标签中唯一必需的属性。

如果不具备该属性则JSP页面会抛出一个异常。

之后你必须给这个action属性指定一个有效值。

一个有效值是指应用程序的Struts配置文件中元素里的任何一个子元素的访问路径。

而且相应的元素中必须有一个name属性,它的值是form bean的名称。

2.
3.任何包含在<form>中用来接收用户输入的标签(<text>、<password>、<hidden>、<textarea>、
<radio>、<checkbox>、<select>)必须在相关的form bean中有一个指定的属性值。

比如,如果你有一个属性值被指定为“username”的<text>标签,那么相关的form bean中也必须有一个名为“username”的属性。

输入<text>标签中的值会被用于生成form bean的userName属性。

<form>标签还有一些不是必须但很有用的“次要”属性。

比如,你可以用focus属性来生成JavaScript,它会“定焦”(focus)到该form所包含的一个元素上。

使用focus属性时你需要给它指定元素的名称。

有没有看到这个标签库是如何建立JavaScript来定焦到password元素上的? 这也是该库让人着迷的地方之一。

你不用担心如何在客户端进行编程,它会帮你自动生成。

还可以看到,<form>标签中method属性的缺省值是POST。

<text>标签、<hidden>标签、<textarea>标签、<radio>标签、<checkbox>标签、<submit>标签、<reset>标签:
都有一个property属性,最后会被转换成HTML中的name属性,当然还有name和value属性。