`
ll_feng
  • 浏览: 391222 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts2常用UI标签之:Form标签

阅读更多
一、select标签
(1)、静态构造下拉选项
<s:select name="user.sex" list="#{'0':'男','1':'女'}" label="性别" headerKey="" headerValue="请选择性别"></s:select>

注解:这里从页面来静态(也就是在页面中写死啦)构造下拉选项,关键点是list="#{'0':'男','1':'女'}" 通过它实现的select的两个option
headerKey指定缺省的选项"value",headerValue指定缺省的选项"text"

(2)、通过list对象动态构造下拉选项
<s:select label="书籍"
       name="book"
       list="books"
       listKey="id"
       listValue="name"
       multiple="true"
       size="3"
       required="true"
/>

注解:这里通过一个list类型的对象来动态生成一个下拉列表。list="books"表示action里有一个list<Book>类型的books属性。listKey="id"表示当前option的value从books里的当前Book对象的id属性取值。listValue="name"表示当前option的text从books里的当前Book对象的name属性取值。

(3)、通过Map对象动态构造下拉选项
<s:select name="user.sex" 
list="sexMap" 
listKey="key"
listValue="value"
label="性别" headerKey="" headerValue="请选择性别"
></s:select>

注解:list="sexMap":表示action里有一个Map<String,String>类型的叫sexMap的属性。可以这样给它赋值:
sexMap = new HashMap();
sexMap.put("0", "男");
sexMap.put("1", "女");

listKey="key"和listKey="value"在这里是固定写法。对应sexMap的key和value

二、radio标签
(1)、静态构造单选项
<s:radio name="user.sex" list="#{'0':'男','1':'女'}" value="'0'"></s:radio>

注解:list="#{'0':'男','1':'女'}"在页面上静态构造了一个有两个项的单选项。value="'0'"是为这组单选项设置一个缺省项,即值为“0”文字为“男”的单选项会作为缺省选择项。注意,0一定要加上单引号,这样struts才不会去值栈里去找一个叫0的属性

(2)、通过map动态构造单选
<s:radio name="user.sex" list="sexMap" listKey="key" listValue="value" value="user.sex"></s:radio>

注解:list="sexMap":表示action里有一个Map<String,String>类型的叫sexMap的属性。可以这样给它赋值:
sexMap = new HashMap();
sexMap.put("0", "男");
sexMap.put("1", "女");

listKey="key"和listKey="value"在这里是固定写法。对应sexMap的key和value
value="user.sex"是为单选组指定缺省的选项。可以通过在action里为user.sex赋值来实现,例如:user.setSex("0");那么页面上值为“0”的那项就会被缺省选择上。

三、checkbox标签
struts2的checkbox比较有个性。
<s:checkbox label="性别" name="user.sex" value="true" fieldValue="dddd"/>
这里value的值是“假”值,fieldValue的值才是真值。当value="true"表示这个复选框被选上。为false时不选上
另外,它在向html转换后会多出一个隐藏域,很奇怪。上面的代码输出成html是这样的:
<input type="checkbox" name="user.sex" value="dddd" checked="checked" id="saveUser_user_sex"/>
<input type="hidden" name="__checkbox_user.sex" value="dddd" /> <label for="saveUser_user_sex" class="checkboxLabel">性别</label>


四、checkboxlist标签
与checkbox不同,该标签提供了类似radio和select的功能,也就是可以提供一组名称相同而值不同的控件。
(1)、静态构造一组复选框
<s:checkboxlist name="user.sex" list="#{'0':'男','1':'女'}" value="'0'"></s:checkboxlist>

注解:以上代码创建了一组包含两个checkbox,由于定义了value="'0'",所以由'0':'男'创建的checkbox将会被选择上。

(2)、通过Map对象动态创建一组复选框
<s:checkboxlist name="user.sex" list="sexMap" listKey="key" listValue="value"/>

注解:以上代码通过一个在action里定义的叫sexMap的Map对象动态创建一组复选框,用sexMap的key定义checkbox的value,用sexMap的value定义checkbox的label

五、datetimepicker标签
datetimepicker标签就是生成一个有日期控件的文本输入框。它有一个前提就是要在<head></head>内加一个"<s:head theme="ajax" />",然后可以在form内加上该标签。
(1)、静态构造有初始值的日期输入项
<s:datetimepicker name="user.birthday" label="出生日期" value="%{'2008-9-20'}"/>

(2)、动态构造有初始值的日期输入项
<s:datetimepicker name="user.birthday" label="出生日期" value="%{date}" displayFormat="yyyy-MM-dd"/>
在给输入项动态赋初始值时,要用ONGL的%{}表达式,而不能用#{}表达式。上面代码中的date变量需在action里有事选定义.

分享到:
评论

相关推荐

    Struts2常用标签

    本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先,我们要明白Struts2标签库与Struts1.x的不同之处。在Struts1.x中,标签库按照功能划分为HTML、Tiles、Logic和Bean等几个...

    struts2 UI标签

    Struts2 UI标签是Struts2框架中的一部分,主要用于简化Web应用中的视图层开发,提升开发效率。这些标签提供了一种声明式的方式来构建动态HTML页面,使得开发者无需直接编写繁琐的JSP代码,而是通过XML或者Java配置来...

    struts2 标签库使用文档

    Struts2标签库的组成 Struts2框架的标签库可以分为以下三类: 用户界面标签(UI标签):主要用来生成HTML元素的标签。 表单标签:主要用于生成HTML页面的FORM元素,以及普通表单元素的标签。 非表单标签:主要用于生成...

    struts2常用标签详解

    本文将深入解析Struts2中的常用标签,这些标签在实际开发中非常实用,对于初学者理解并掌握Struts2的运行机制至关重要。 首先,我们需要了解Struts2标签库的主要组成部分,它们分为Action、Display、Logic、Field和...

    struts2 标签详解+ ui标签实例

    本篇主要介绍Struts2中的标签库,特别是通用标签和UI标签。 首先,Struts2的标签库支持三种不同的表示技术:JSP、FreeMarker和Velocity。虽然部分标签在这三种技术下都可使用,但有些标签仅适用于其中一种。标签库...

    Struts2Ui标签

    form,这个属性 引用表单元素所在的表单,通过该form属性,可以实现表单元素和表单之间的交互。例如,我们可以通过${parameters.form.id}来取得 表单元素所在表单的ID。

    Struts2标签 UI标志又可以分为表单UI和非表单UI两部分

    ### Struts2 标签详解:表单UI与非表单UI #### 一、概述 Struts2作为Java Web开发中的一个重要框架,为开发者提供了丰富的标签库来简化Web页面的构建过程。根据官方文档所述,“UI标签又可以分为表单UI和非表单UI...

    struts2常用标签总结

    5. **其他常用标签** - **s:form**:创建HTML表单,可以自动绑定Action中的方法。 - **s:action**:执行一个Action并渲染结果。 - **s:submit**:在表单中提交按钮,可以指定执行的方法。 - **s:checkbox**、`s:...

    struts2下jquery-ui的全部实例

    - **Struts标签库**:提供了一系列方便的标签,如`s:form`、`s:textfield`等,简化了视图层的开发。 2. **jQuery UI**: - **主题系统**:jQuery UI支持自定义和预定义的主题,使UI组件样式一致且易于定制。 - *...

    struts2 自定义标签

    2. 编写标签处理类(Tag Class):这个类负责处理标签的逻辑,它继承自`org.apache.struts2.views.jsp.ui.TagSupport`或其子类,并重写相关方法。 3. 编写标签支持类(Tag Extra Info Class, TEI):非必需,但可以...

    Struts2之struts2标签库了解和使用案例struts025

    在Struts2中,标签库是其核心组件之一,极大地简化了视图层的开发,使得开发者可以更加专注于业务逻辑而不是繁琐的HTML代码。本篇文章将深入探讨Struts2的标签库,并通过具体案例进行讲解。 首先,Struts2标签库...

    Struts 2.0 UI标签实例程序

    4. `&lt;s:form&gt;`:定义一个表单,包括form元素的所有属性,如action(指定处理表单的Action方法)、enctype(编码类型)等,还可以嵌套其他UI标签。 5. `&lt;s:checkbox&gt;` 和 `&lt;s:checkboxlist&gt;`:用于创建复选框,单个...

    struts2-4标签库文件上传下载

    Struts2标签库的强大之处在于它能够方便地集成到现有的项目中,并提供一系列高度定制化的选项,使得开发者能够轻松地构建出功能强大且美观的用户界面。其中,文件上传和下载功能是Struts2标签库的一个亮点,不仅易于...

    struts2标签解析

    Struts2标签库是Java Web开发中的一个强大工具,它为开发者提供了丰富的UI组件和控制逻辑,极大地简化了视图层的代码编写。Struts2框架的标签库基于OGNL(Object-Graph Navigation Language)表达式语言,使得在JSP...

    struts2标签介绍2

    Struts2标签库是基于OGNL(Object-Graph Navigation Language)表达式语言,提供了丰富的UI组件和逻辑控制标签,帮助开发者在视图层实现与业务逻辑的解耦。 在描述中提到的"struts2标签",我们可以深入理解以下几个...

    Struts2标签库详解

    在Struts2框架中,标签库分为非UI标签和UI标签两大类。 1. **非UI标签**: 非UI标签通常用于处理逻辑或数据,不直接与用户界面交互。例如,`&lt;s:property&gt;`标签用于显示或传递对象的属性值,`&lt;s:if&gt;`和`&lt;s:else&gt;`...

    struts2常用标签

    ### Struts2常用标签详解 #### 一、概述 Struts2框架作为Java Web开发中的重要组成部分,提供了丰富的标签库来简化前端页面的编写。这些标签不仅能够提高开发效率,还能增强代码的可读性和可维护性。本文将详细...

    struts2标签详解

    除了表单UI标签之外,Struts2还提供了一些非表单UI标签,这些标签主要用于页面布局和控制流。 ##### 示例代码 ```jsp &lt;s:if test="%{#session.user != null}"&gt; &lt;s:text key="welcome" arg0="%{#session.user.name}...

    struts2标签库详解(非常不错)

    Struts2标签库是开发Java Web应用程序的重要工具,它提供了丰富的UI组件和逻辑控制标签,大大简化了视图层的编码工作。这个“Struts2标签库详解(非常不错)”的资源应该包含了对Struts2所有标签的详细介绍,以及相关...

Global site tag (gtag.js) - Google Analytics