`
wind_bell
  • 浏览: 292020 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

Struts提供的和Form相关的标签(转)

阅读更多
在本文中我讲述了如何使用Struts提供的form相关的标签。



与form相关的标签包括<form>标签本身以及所有必须包含在其中的标签。比如,<text>和<password>标签就是和form相关的标签,因为如果不把它们放到一个form中它们就没有意义。



<form>标签
<form>标签用于生成一个HTML form。使用该标签时必须遵循许多规则。



首先,<form>标签中必须包含一个action属性,它是这个标签中唯一必需的属性。如果不具备该属性则JSP页面会抛出一个异常。之后你必须给这个action属性指定一个有效值。一个有效值是指应用程序的Struts配置文件中<action-mappings>元素里的任何一个<action>子元素的访问路径。而且相应的<action>元素中必须有一个name属性,它的值是form bean的名称。



例如,如果你有这样一个<form>标签:   <html:form action="/login" >



那么你的Struts配置文件的<action-mappings>元素中必须有一个如下显示为粗体的<action>元素:
  <action-mappings>
     <action path="/login"
      type="com.javapro.struts.LoginAction" 
      name="loginForm"
      scope="request"
      input="/login.jsp">
      <forward name="success" path="/mainMenu.jsp"/>
    </action>
    .
    .
    .
  </action-mappings>
这就是说一个form标签是和form bean相关联的。



另一个要遵循的规则是:任何包含在<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属性时你需要给它指定元素的名称。比如,以下代码是定焦在第二个Text元素上的: <body>
<html:form action="/login" focus="password">
User Name: <html:text property="userName"/>
<br>Password: <html:text property="password"/>
<br><html:submit/>
</html:form>
</body>
该段代码会被转换成:
<body>
<form name="loginForm" method="post"
   action="/myStrutsApp6/login.do">
User Name: <input type="text" name="userName"
   value="">
<br>Password: <input type="text"
   name="password" value="">
<br><input type="submit"
   value="Submit">
</form>
<script language="JavaScript"
   type="text/javascript">
  <!--
if (document.forms["loginForm"].elements[
      "password"].type != "hidden")
    document.forms["loginForm"].elements[
      "password"].focus()
  // -->
</script>



</body>
注意,<form>标签中method属性的缺省值是POST。另外,有没有看到这个标签库是如何建立JavaScript来定焦到password元素上的? 这也是该库让人着迷的地方之一。你不用担心如何在客户端进行编程,它会帮你自动生成。



在运行前面的例子时还要注意,你必须有一个包含userName和password属性的相关form。你可以参考本文第三部分中的Login程序。



<text>标签
<text>标签用于生成一个文本的输入区域。它必须包含和相关form bean中的相同属性对应的“property”属性。该标签只有在嵌入到一个<form>标签中时才有效。
例如: <html:text property="userName"/>
会被转换成: <input type="text" name="userName" value="">



<password>标签
<password>标签用于生成一个口令字(type password)的输入区域。它必须包含和相关form bean中的相同属性对应的“property”属性。该标签只有在嵌入到一个<form>标签中时才有效。该标签中的一个很重要的属性是“redisplay”,它用于重新显示以前输入到这个区域中的值。该属性的缺省值为true。然而,为了使password不能被重新显示,你或许希望将该属性的值设为false。
例如: <html:password property="password" redisplay="false"/>
会被转换成: <input type="password" name="password" value="">



<hidden>标签
<hidden>标签用于生成一个隐藏文本的输入区域。它必须包含和相关form bean中的相同属性对应的“property”属性。该标签只有在嵌入到一个<form>标签中时才有效:
例如: <html:hidden property="userName"/>
会被转换成: <input type="hidden" name="userName" value="">



<textarea>标签
<textarea>标签用于生成一个文本区元素(text area element)。它必须包含和相关form bean中的相同属性对应的“property”属性。



比如:
<html:textarea property="details" cols="80" rows="20" value="Enter details here"/>
会被转换成:
<textarea name="details" cols="80" rows="20">Enter details here[size=18][/size]
分享到:
评论

相关推荐

    HTML标签转STRUTS标签

    常见的STRUTS标签有`&lt;s:form&gt;`、`&lt;s:textfield&gt;`、`&lt;s:textarea&gt;`、`&lt;s:submit&gt;`等。 在VS2005中进行HTML到STRUTS标签的转换,主要是为了适应STRUTS框架的工作流程,提高代码的可读性和维护性。这个转换工具可能...

    Struts提供的和Form相关的标签 .rar

    在Struts中,表单(Form)是用户交互的核心,而Struts提供了丰富的标签库来帮助开发者更方便地创建和处理表单。下面将详细解释Struts中与Form相关的标签及其用法。 1. `&lt;html:form&gt;`标签:这是Struts最基础的表单...

    Struts2实例 国际化 类型转换 struts标签

    总结起来,这个Struts2实例项目通过整合国际化、类型转换和Struts2标签,构建了一个完整的用户管理系统,展示了如何在实际开发中高效地处理Web请求,实现业务逻辑,并提供多语言支持。这样的练习有助于提升开发者对...

    Struts常见的Form(一)

    它们通常被定义在struts-config.xml配置文件中,然后在JSP页面中通过.struts-bean:form标签实例化。 1. **基本Form Bean**: 这是最简单的形式,通常用于处理单个表单或简单的数据输入。在struts-config.xml中定义一...

    struts2官方例子10--Struts2的Form标签

    在Struts2框架中,Form标签是用于处理用户输入和表单数据的核心组件之一。这个官方示例10专注于讲解如何在Struts2中使用Form标签。 Form标签主要用于创建HTML表单,并与Action类中的属性进行绑定。这使得在前端和...

    struts form 表单 用法

    使用HTML:FORM标签** 在JSP页面中,我们可以使用Struts的`html:form`标签来创建表单,它会自动绑定到之前声明的Form Bean: ```jsp &lt;html:form action="testAction" method="POST"&gt; 请输入内容: 提交" /&gt; ...

    Struts标签库 Struts 标签库

    Struts2框架中的标签库是基于JSP标准标签库(JSTL)的扩展,它提供了一系列与动作、结果、表单和国际化相关的标签。这些标签能够帮助开发者在页面上轻松地展现数据、处理表单提交、实现动态内容生成等。 2. **主要...

    struts1标签库详解

    同时提供了依据 cookies、headers 和 parameters 的值创建相关 bean 的能力。 * bean:cookie:取回请求中名称为 name 的 cookie 的值。如果没有指定 multiple 属性则依据刚取回的值创建一个 Cookie 类型的 bean。...

    struts2 自定义标签

    在`teststruts2`项目中,我们可能会有一个名为`CustomTagExampleAction`的Action类,它处理与自定义标签相关的业务逻辑。然后,在结果页面(比如`result.jsp`)中,我们可以这样使用自定义标签: ```jsp ...

    struts2标签使用例子

    在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。 1. **Struts2核心标签库**: - `s...

    Struts2常用标签

    Struts2是一个强大的MVC框架,它提供了丰富的标签库,使得开发者在编写JSP页面时能够更加方便地处理业务逻辑和展示数据。本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先...

    struts标签(如<html:form>)

    关于STRUTS标签的一些详细说明。 如:&lt;html:form&gt;的说明。

    jstl和struts标签

    Struts 是一款用于构建企业级Web应用的开源框架,其标签库提供了一系列便于开发人员使用的自定义标签,这些标签可以帮助开发者更高效地创建动态网页,特别是在与Struts框架集成时更为显著。Struts标签库包括表单标签...

    struts1.2标签实例

    Struts1.2标签是Java Web开发中Struts框架的一部分,它提供了一种在JSP页面中更加便捷、可维护的方式来处理业务逻辑和控制流程。Struts1.2标签库大大简化了视图层的开发,使开发者可以避免过多地在JSP中编写Java脚本...

    struts整体构架和核心标签库.

    Struts是一个开源的Java Web应用程序框架,由Apache软件基金会维护,用于帮助开发者...以上就是关于Struts框架的整体构架和核心标签库的介绍,通过学习和掌握这些知识点,开发者可以更高效地构建和管理Java Web应用。

    Struts2源码和标签使用和配置

    3. **Struts2标签库**:Struts2提供了一套丰富的标签库,如`s:text`、`s:property`、`s:form`等,这些标签极大地简化了视图层的开发,提高了代码的可读性和可维护性。例如,`s:form`标签可以创建表单,自动处理验证...

    struts标签库学习

    表单标签库是Struts2的一大特色,它包括`&lt;s:form&gt;`,`&lt;s:textarea&gt;`,`&lt;s:radio&gt;`,`&lt;s:checkbox&gt;`等,这些标签提供了强大的表单处理功能,如自动验证、错误显示和动态表单生成。 **6. 使用Struts标签库的优势** -...

    struts标签库使用大典

    jakarta-struts-1.2.4是Struts的一个旧版本,其中包含了Struts的核心库、标签库和其他相关组件。开发者可以通过这个版本的文档和API来学习和使用Struts标签库。 6. **优势与注意事项** 使用Struts标签库能提高...

    Struts2表单标签使用范例

    Struts2提供了`&lt;s:file&gt;`标签用于文件上传,`&lt;s:date&gt;`和`&lt;s:datetime&gt;`标签用于日期和时间的选择。 综上所述,Struts2的表单标签提供了一套完整的解决方案,覆盖了从简单的输入元素到复杂的表单交互。通过熟练掌握...

    图像加法&struts用法标签大全

    Struts提供了丰富的标签库,使得在JSP页面中处理业务逻辑变得更加简洁。例如,`&lt;s:property&gt;`标签用于显示Action对象的属性值,`&lt;s:form&gt;`用于创建HTML表单,`&lt;s:iterator&gt;`遍历集合并渲染,`&lt;s:if&gt;`和`s:else`进行...

Global site tag (gtag.js) - Google Analytics