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. 2018 6年iOS开发常用的三方库

    开发一般APP必备三方库,省力秘籍!!!本篇文章会经常更新最新常用的三方. 1.网络请求库 AFNetworking https://github.com/AFNetworking/AFNetwork ...

  2. ecshop PC版本智能跳转到对应手机版页面

    以下适用于PC跳转到ectouch手机版的写法.其他手机端的方法类似. 修改文件 includes/lib_main.php 增加以下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...

  3. Java中的几种常用循环

     循环的条件 反复执行一段相同或相似的代码 一     for循环        先判断,再执行   代码示例为 ① for (int i = 0; i < args.length; i++) ...

  4. linux下nginx负载均衡搭建

    [一.Nginx能做什么] 1.http服务器.Nginx是一个http服务可以独立提供http服务.可以做网页静态服务器. 2.虚拟主机.可以实现在一台服务器虚拟出多个网站.例如个人网路使用的虚拟主 ...

  5. String类中常用的方法(重要)

    1.字符串与字节 public String(byte[] byte); 将全部字节变成字符串 public String (byte[] byte,int offset,int length) 将部 ...

  6. mac版chrome升级到Version 65.0.3325.18后无法打开百度bing搜狗

    mac版本chrome升级到Version 65.0.3325.18后发现突然无法访问百度,搜狗,bing,神马等一系列的国内搜索引擎网站.连百度的儿子们比如知道,百度百科都无法访问. 1.首先想到的 ...

  7. [LeetCode] Student Attendance Record II 学生出勤记录之二

    Given a positive integer n, return the number of all possible attendance records with length n, whic ...

  8. centOS7配置DNS服务器

    世上无难事只怕有心人,遇事千万千万不要抵触,消极的情绪是失败之母,一点一滴,踏踏实实是通往幸福的捷径. 历经激动,受挫,抵触和鼓励以及征服,终于配好了让我欢喜让我忧的dns.在这里记录下来,希望能够给 ...

  9. 实验吧_密码忘记了(vim编辑器+代码审计)&天网管理系统(php弱比较+反序列化)

    密码忘记了 一开始尝试了各种注入发现都无效,在网页源码中找到了admin 的地址,输入地址栏发现并没有什么有用的信息,随便输个邮箱,网页返回了一个地址 ./step2.php?email=youmai ...

  10. HNOI2018 滚粗记

    day0 说好了不复习,于是复习了一下配置,没想到一下就记住了,咋不退役去搞英语竞赛捏 皇室一波攒RP,chicken chicken一波攒RP day1 机子坏了,换到了最后面,但这个时候已经 \( ...