1.通用标签:
  • property标签:
    • 用来输出值栈属性的值
    • 如果value属性没有给出,ValueStack值栈栈顶对象的值被输出
    • 许多情况下,EL表达式可以提供更简洁的语法
  • url标签:
  • url方法(常用):
    • action
    • includeParams
    • method
    • namespace
    • value
    • var
  • 作用:使用url可以动态的创建一个URL
  • parms标签:
    • 作用:将一个参数传递给包裹着它的那个标签
    • 属性值:name、value
    • 无论在给出value值时有没有使用%{},Struts都会对它进行ognl解析
    • 想传递一个字符串类型的属性值就必须使用单引号引起来
    • 可以把value属性的值写在开始和结束标签之间,利用这种方式来传递一个el表达式的值
  • set标签:
    • 作用:用以在map对象里创建一个键值对
    • 作用范围:
      • ValueStack值栈的ContextMap值栈
      • Map类型的session对象
      • Map类型的application对象
      • Map类型的request对象
      • Map类型的page对象
  • push标签:
    • 作用:和set标签类似
    • 区别:
      • push标签直接将值封装到ValueStack而不是ContextMap
      • push标签在标签开始时将值放入到栈中,标签结束时拿出
  • 测试标签:
    • 包括:
      • if
      • else
      • elseif
    • 作用:作用于条件测试,除else外使用时必须有test方法
  • iterator标签:
    • 作用:遍历一个数组、Collection或者一个Map,并将这个可遍历对象的每一个元素依次压入和弹出ValueStack
  • sort 标签:
    • 作用:用来对一个可遍历对象进行排序
    • 参数:
      • comparator
      • source
      • var
  • date标签:
    • 作用:用来对Date对象进行排版
    • 参数:
      • format
      • name
      • nice
      • var
    • 注意:format属性的值必须是java.text.SimpleDateFormat类里定义的日期/时间格式之一
  • a标签:
    • 作用:与html中的a标签作用相同
    • 好处:可以对属性值进行OGNL解析
    • 注意:使用%{}进行强制的ognl解析
2.表单标签:
  • 概述:
    • 作用:表单标签将在HTML中被表现为一个表单元素
    • 优点:
      • 表单回显
      • 对页面进行布局和排版
    • 注意:标签的属性可以被赋值为一个静态的值或者一个ognl表达式,如果在赋值时使用了ognl表达式并用了%{}将之包含,这个ognl表达式将被求值
  • form标签:
    • 作用:用来呈现html语言中的表单元素
    • 注意:默认情况下,form标签将被呈现一个表格形式的html表单,嵌套在form标签里的输入字段将被呈现为一个表格行。每个表格行由两个字段组成。一个对应行标,一个对应输入元素,提交按钮将被呈现为一个横跨两列的行。
  • textfield标签:
    • 呈现方式:输入文本字段
  • password标签
    • 呈现方式:口令字段
    • 与textfield字段区别:扩展自textfield字段,但是多了一个showPassword属性,默认为false
  • hidden标签
    • 呈现方式:不可见字段
  • submit标签:
    • 呈现方式:呈现为一个提交按钮,可修改其type属性为三种表现方式:submit、button、image
  • textarea标签:
    • 呈现方式:将呈现一个HTML文本域元素
  • checkbox标签:
    • 呈现方式:将呈现一个HTML复选框元素,该复选框通常用于提交一个boolean值
    • 注意
      • 当一个复选框被选中时,该复选框的值变为true,并且在HTTP中增加一个请求参数,如果为选择则不增加
      • 而struts2中解决了该局限性,它为每一个复选框增加一个不可见的配对字段
  • list、listKey、listValue属性:
    • 作用:作用于radio.select.checkboxlist三个标签,很重要
    • 用法:可以把一个String、一个数组、一个Enumeration、Iterator、Map或者Collection赋值给list属性
  • radio标签:
    • 呈现方式:呈现为一组单选按钮,单选按钮的个数与其list属性值的个数相同
    • 注意:一般使用radio进行多选一,而真与假则使用checkbox标签
  • select标签:
    • 呈现方式:将呈现一个select元素,即下拉列表框
    • 注意:
      • optgroup可以作为select的子标签,用于显示更多下拉框
      • 必须有键值对,而不能使用一个集合,让其值级作为键,又作为值
      • 也可以使用list,但是必须指定listkey和listvalue
  • checkboxlist标签:
    • 呈现方式:呈现一组多选框
    • 注意:
      • checkbox标签被映射到一个字符串数组或者一个基本类型的数组,若它赋值的多选框一个也没有被选中,相应的属性将被赋值为一个空数组而不是空值。
      • 服务端必须使用lsit集合接收,才能保证正常回显
      • 2.5版本使用lsit接收,打印出来后为空集合,且回显值会减少一个,而使用String []接收则可以正常回显,解决方法暂未找到
 
3.主题:
  • 作用:为了让所有的UI标签能够产生同样的视觉效果而归集到一起的一组模板,即风格相近的模板被打包为一个主题
  • Struts2主题:
    • simple:把UI标签翻译成最简单的html对应,而且会忽略行标
    • xhtml:默认主题,这个主题的模板通过使用一个表格布局提供了一种自动化的排版机制
    • css_xhtml:这个主题和xhtml主题相近,但是使用css进行排版布局
    • ajax:以xhtml主题为模板,增加了一些ajax功能
  • 修改主题:
    • 通过UI标签的theme属性
    • 在一个表单里,若没有给出某个UI标签的theme属性,它将使用这个表单的主题
    • 在page、session、request或application中添加一个theme属性
    • 修改default.properties文件中的struts.ui.theme属性
 

04_Struts2标签的更多相关文章

  1. a标签点击跳转失效--IE6、7的奇葩bug

    一般运用a标签包含img去实现点击图片跳转的功能,这是前端经常要用到的东西. 今天遇到个神奇的bug:如果在img上再包裹一层div,而且div设置了width和height,则图片区域点击时,无任何 ...

  2. IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法

    直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...

  3. 百度MIP页规范详解 —— canonical标签

    百度MIP的规范要求必须添加强制性标签canonical,不然MIP校验工具会报错: 强制性标签<link rel="/^(canonical)$/"> 缺失或错误 这 ...

  4. 【CSS进阶】伪元素的妙用--单标签之美

    最近在研读 <CSS SECRET>(CSS揭秘)这本大作,对 CSS 有了更深层次的理解,折腾了下面这个项目: CSS3奇思妙想 -- Demo (请用 Chrome 浏览器打开,非常值 ...

  5. TODO:Laravel 使用blade标签布局页面

    TODO:Laravel 使用blade标签布局页面 本文主要介绍Laravel的标签使用,统一布局页面.主要用到到标签有@yield,@ stack,@extends,@section,@stop, ...

  6. 最新 去掉 Chrome 新标签页的8个缩略图

    chrome的新标签页的8个缩略图实在让人不爽,网上找了一些去掉这个略缩图的方法,其中很多已经失效.不过其中一个插件虽然按照原来的方法已经不能用了,但是稍微变通一下仍然是可以用的(本方法于2017.1 ...

  7. css-父标签中的子标签默认位置

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  8. xpath提取多个标签下的text

    title: xpath提取多个标签下的text author: 青南 date: 2015-01-17 16:01:07 categories: [Python] tags: [xpath,Pyth ...

  9. 多个Img标签之间的间隙处理方法

    1.多个标签写在一行 <img src="/i/eg_tulip.jpg" alt="郁金香" height="100px"/> ...

随机推荐

  1. highstaock+websocket实现动态展现

    效果:从后台获取回测数据,在前端动态展现,和聚宽实现的回测效果相仿 大体思路:先传一个[[int,0],[int,0],[int,0],[int,0],[int,0],...]格式的死数据到前端渲染x ...

  2. hdu1249 三角形分割平面---递推

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1249 题目大意: 用N个三角形最多可以把平面分成几个区域? 思路: 知道了直线和折线分割平面的情况这 ...

  3. 数十种TensorFlow实现案例汇集:代码+笔记(转)

    转:https://www.jiqizhixin.com/articles/30dc6dd9-39cd-406b-9f9e-041f5cbf1d14 这是使用 TensorFlow 实现流行的机器学习 ...

  4. PHP 安装与配置(WIN10)

    需要在本地搭个PHP的测试环境,顺手将过程写了下来. 由于不是生产环境,我这里直接选择了最新的PHP版本用来测试. 本地坏境为:windows 10 Pro 1709 PHP版本:php-7.2.3- ...

  5. WebRTC 音频采样算法 附完整C++示例代码

    之前有大概介绍了音频采样相关的思路,详情见<简洁明了的插值音频重采样算法例子 (附完整C代码)>. 音频方面的开源项目很多很多. 最知名的莫过于谷歌开源的WebRTC, 其中的音频模块就包 ...

  6. volume 方式使用 Secret - 每天5分钟玩转 Docker 容器技术(157)

    Pod 可以通过 Volume 或者环境变量的方式使用 Secret,今天先学习 Volume 方式. Pod 的配置文件如下所示: ① 定义 volume foo,来源为 secret mysecr ...

  7. Redis常用命令--Sets

    Set是不重复且无序的字符串元素的集合. 还可以对set集取交集,并集,差等等. 在Redis中大概有15个操作Set的命令. SADD key member [member ...]:添加一个或者多 ...

  8. [BZOJ 4916]神犇和蒟蒻

    Description 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; Input 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; Output 请你 ...

  9. [HNOI2011]任务调度

    题目描述 有 N 个任务和两台机器 A 与 B.每个任务都需要既在机器 A 上执行,又在机器 B 上执行, 第 i 个任务需要在机器 A 上执行时间 Ai,且需要在机器 B 上执行时间 Bi.最终的目 ...

  10. bzoj 3672: [Noi2014]购票

    Description 今年夏天,NOI在SZ市迎来了她30周岁的生日.来自全国 n 个城市的OIer们都会从各地出发,到SZ市参加这次盛会. 全国的城市构成了一棵以SZ市为根的有根树,每个城市与它的 ...