转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html

1.基础表单标签

准备工作:建立struts2tag项目,搭建好struts2的开发环境。在html我们常用的基础表单标签主要有文本域、密码域、提交、重置四种。它们在strust2中可以通过标签来生成。下面建立login.jsp页面,与这四种标签相关的内容如下:

<%@ page language="java"  pageEncoding="utf-8"%>

<%@ taglib uri="/struts-tags" prefix="s" %>

<html>

<body>

<s:form action="login" method="post" namespace="/my">

<s:textfield label="用户名" name="user.username" required="true" requiredposition="right"/>

<s:password label="密码" name="user.password" required="true" />     
<s:reset value="重置" align="left"/>
<s:submit value="注册" align="left"/>

</s:form>

</body>

</html>

说明:label中的内容是显示在表单前的提示内容,required设为true,表示此表单项为必填内容。

2.单选按钮和复选框:

<s:radio list="#{1:'男',0:'女'}"  value="1"  label="性别" name="user.sex"/>
<s:checkboxlist list="#{1:'足球',2:'排球',3:'蓝球',4:'网球'}" name="user.love" label="爱好"/>

3.三种方式实现下拉列表

<s:bean id="p" name="com.asm.NativePlaceFormAction"></s:bean>

<s:bean name="com.asm.NativePlaceMapFormAction" id="pMap"></s:bean>

<s:bean name="com.asm.NativePlaceProFormAction" id="pp"></s:bean>

<s:select list="#p.place" label="籍贯" name="user.place"/>

<s:select list="#pMap.place" label="籍贯2" name="user.place"/>

<s:select list="#pp.place" listKey="pId" listValue="pName" label="籍贯3" name="user.place" headerKey="-1" headerValue="---省---" emptyOption="true"/>

说明:三种方式实现下拉列表分别对应了三个java类,这三个类的内容为:
NativePlaceFormAction主要代码为:
package com.asm;

public class NativePlaceFormAction extends ActionSupport {

private List<String> place;

public NativePlaceFormAction(){

place=new ArrayList<String>();

place.add("山东省");

place.add("山西省");

place.add("河南省");

place.add("河北省");

place.add("四川省");

place.add("云南省");

}

...省略place的get/set方法

}

NativePlaceMapFormAction主要代码为:
package com.asm;

public class NativePlaceMapFormAction extends ActionSupport {

private Map<Integer, String> place;

public NativePlaceMapFormAction() {

place = new HashMap<Integer, String>();

place.put(1, "山东省");

place.put(2, "山西省");

place.put(3, "河南省");

place.put(4, "河北省");

place.put(5, "四川省");

place.put(6, "云南省");

}
       ...省略place的get/set方法

}
NativePlaceProFormAction主要代码为:
package com.asm;
public class NativePlaceProFormAction extends ActionSupport {

private List<Object> place;

public NativePlaceProFormAction(){

place=new ArrayList<Object>();

new Province(1,"山东省","济南");

place.add(new Province(1,"山东省","济南"));

place.add(new Province(2,"山西省","太原"));

place.add(new Province(3,"河南省","郑洲"));

place.add(new Province(4,"河北","石家庄"));

place.add(new Province(5,"四川","成都"));

place.add(new Province(6,"云南","昆明"));

}

...省略place的get/set方法

}

说明:此三种实现效果一样,但是在它们提交时传递给服务器的参数不同,具体可以参看login.jsp页面的源码。另外,这三种实现其实都依赖了<s:bean>设定的对象,如果我们不希望依赖<s:bean>来设定,可以通过配置action来实现:下面我们以NativePlaceFormAction说明:首先在struts.xml中配置此action,配置内容如下:
<action name="npf" class="com.asm.NativePlaceFormAction">

<result>/login2.jsp</result>

</action>
随后,我们在login.jsp中增加如下内容:
       <a href="<%=request.getContextPath()%>/my/npf.action">另一个注册页面</a>
其中login2.jsp中的关键内容为:
              <s:select list="place" label="籍贯" name="user.place"/>

我们可以发现:在login2.jsp中填写list的值时并没有用ognl表达式,因为我们通过npf.action来访问时,此Action已经被写入到了值栈中,所以我们可以直接引用。 后面所用到的实例,我们都会把这样的类做成Action,这样如果我们想通过这种方式访问便只需要在struts.xml中配置即可

转载于:https://www.cnblogs.com/sharpest/p/5587934.html

38.使用标签-基础表单标签相关推荐

  1. java day32【HTML标签:表单标签 、CSS】

    第一章  HTML标签:表单标签 * 表单: * 概念:用于采集用户输入的数据的.用于和服务器进行交互. * form:用于定义表单的.可以定义一个范围,范围代表采集用户数据的范围 * 属性: * a ...

  2. HTML的表格标签,列表标签,表单标签,HTML5有哪些新特性

    HTML的表格标签,列表标签,表单标签,HTML5有哪些新特性 欢迎大家去博客冰山一树Sankey,浏览效果更好.直接右上角搜索该标题即可 博客园主页:博客园主页-冰山一树Sankey CSDN主页: ...

  3. [JavaWeb-HTML]HTML标签_表单标签

    HTML标签:表单标签 * 表单:* 概念:用于采集用户输入的数据的.用于和服务器进行交互.* form:用于定义表单的.可以定义一个范围,范围代表采集用户数据的范围* 属性:* action:指定提 ...

  4. Struts2中UI标签之表单标签介绍

    1.在Struts2中UI标签的表单标签分为两种:form标签本身和单个表单标签. 2.Struts2表单标签包括:form.textfield.password.radio.checkbox.che ...

  5. HTML标签-排版标签、媒体标签、列表标签、表格标签、表单标签、语义化标签、字符实体

    一.排版标签 1.标题标签 在新闻和文章的页面中都离不开标题,用来突出显示文章主题. h系列标题 <body><h1>1级标题</h1> <h2>2级标 ...

  6. Web学习第二天——HTML的基本标签(媒体标签、链接标签、列表标签、表格标签、表单标签)

    第二天 HTML的常用标签(媒体标签.链接标签.列表标签.表格标签.表单标签) 一.媒体标签 (一).图片标签(img) 标签格式及属性介绍 (二).音频标签(embed.audio) embed标签 ...

  7. 4、HTML——表格标签、表单标签

    目录 一.表格标签:table-tr-td/th 1.合并单元格 1.1 合并同行不同列的单元格(列合并) 1.2  合并同列不同行的单元格(行合并) 二.表单标签:form 1.form标签 2.i ...

  8. HTML 表格标签、列表标签、表单标签(案例: 注册页面)

    1. 表格标签 表格是实际开发中非常常用的标签: 1. 表格的主要作用 2. 表格的基本语法 1.1 表格的主要作用 表格主要用于显示.展示数据,因为它可以让数据显示的非常的规整,可读性非常好.特别是 ...

  9. HTML 列表标签、表格标签、表单标签

    HTML 列表标签.表格标签.表单标签 一.列表标签 二.表格标签 三.表单标签 四.综合练习 一.列表标签 <!DOCTYPE html> <html lang="en& ...

  10. 什么标签用于在表单中构建复选框_基础表单标签及属性

    表单标签 一.一个完整的表单包含三个基本组成部分:(表单标签.表单域.表单按钮) ​ 1.表单标签:form标签,用于设置服务器地址.请求方式等等 ​ 2.表单域:用户需要填写或选择的数据,输入框.单 ...

最新文章

  1. java爱暮色森林7.0js_我的世界手机版暮色森林js
  2. 【操作系统】考研の处理机调度算法(看不懂你来打我~!)
  3. sql查table,VIEW,sp, function 及 trigger 物件
  4. EJB----消息驱动bean--Topic 消息的发送与接收(Pub/sub 消息传递模型)
  5. vs2010 中文问题
  6. 删除已弃用的CMS垃圾收集器的JEP草案
  7. [MEGA DEAL] Java编程-硕士课程(85%折扣)
  8. LeetCode-1438. 绝对差不超过限制的最长连续子数组
  9. 找出最具竞争力的子序列_每日算法系列【LeetCode 376】摆动序列
  10. 反思风险管理的五项核心风险。
  11. 苹果Mac强大的思维导图软件:MindNode 帮你轻松理清思路
  12. 阶段3 3.SpringMVC·_01.SpringMVC概述及入门案例_05.入门程序之入门代码编写
  13. 摄影测量内定向编程实现
  14. 根据身份证号判断所属省份、生日及性别
  15. java整数最大_Java 整数最大值
  16. 【观察】阿里云栖大会究竟好在哪里?
  17. 小姜的毕设_Software
  18. Git使用技巧--详细教程
  19. mysql capi函数详解_CAPI函数描述(A-F)
  20. AI人脸识别的实现SDK

热门文章

  1. 华为鸿蒙系统困难重重,困难重重,华为依然积极发展自主操作系统,同时布局鸿蒙和UOS...
  2. hx711压力传感器工作原理_压电式压力传感器原理,你了解吗?
  3. python如何保存计算数据_python – 在scikit-learn中保存新数据的特征向量
  4. css3中插入地图,CSS3 地图展开动画
  5. 线程 daemon java user,Java线程_守护线程和用户线程
  6. java案例代码9-冒泡算法:
  7. 关于垂直列行值转成水平行值及多列值转合并成单列值
  8. python iotextwrapp执行不动_Python tkinter - 第10章 文本控件(Text)方法
  9. linux 通知线程退出,[Linux线程]多线程的阻塞和退出
  10. 重置电脑的网络配置 -- 解决防火墙问题导致的应用启动失败