注意事项:

   (1):In HTML the <option> tag has no end tag.HTML中<option>标签不需要关闭。In XHTML the <option> tag must be properly closed. 在XHTML中<option>标签必须合理关闭。

在使用struts1中包含的下拉列表的标签包含:

    <html:select>生成HTML<select>元素

    <html:option>:生成HTML<option>元素

    <html:options>:生成一组HTML<options>元素

    <html:optionsCollection>生成一组HTML<options>元素。

其中<html:select>生成HTML<select>元素,表示下拉列表框或多选列表。在<html:select>标签中可以包含多个<html:option>,<html:options>,  <html:optionCollections>元素。

    size属性:指定每次在网页上显示的可选项的数目。

    multipe属性:指定是否支持多项选择,如果设置为true,就表示多选列表,支持多项选择。否则只表示下拉列表。只支持单选操作。默认是false。

    property属性:与ActionForm Bean中的某个属性对应,这个属性用来存放用户在列表上选中选项的值。在单项选择的情况下,ActionForm Bean中的对应属性对应该列表上选项的值。在单项选择情况下,

    ActionForm Bean对应属性应该定义为简单类型(不能为数组),在多项选择情况下,ActionForm Bean中的对应属性应该定义为数组类型,以便存放用户选择的多个选项。

  <html:option>

    <html:option value="1">a</html:option>

       使用sturts1标签完成下拉框。基本示例如下:本地使用国产框架Buffalo.

    jsp脚本: 

    <td>
      <html:select property="grapeResult.grapeOptionId" name="grapeForm" styleId="options">
      </html:select>
    </td>

    <script language="JavaScript" src="<%=request.getContextPath()%>/scripts/buffalo.js"></script>

    var buffaloEmpInfo = new Buffalo('<%=request.getContextPath() %>' + '/xmlhttp');
    var END_POINT="<%=request.getContextPath()%>/xmlhttp";

    function result(reply){
      var returnResult = reply.getResult();
    $("#options").empty();
      if(returnResult.length > 0){
      for(var index = 0 ; index < returnResult.length ; index++){
        $("#options").append("<option value="+returnResult[index].oid +" style='color:"+returnResult[index].color.name+"'>●</option>");
     }
      }else{
        $("#nobutton").attr("disabled", true);
      }
    }

   <html:options>

        使用coolection属性指定存在某个范围中的集合来生成列表项,注意coolection属性指定的集合,该对象的每一个元素为一个Bean。

    例如有如下实体类  

    package com.pojo;

    public class Users {

    private String userName;
    private String userValue;
    public Users(){}
    public Users(String userName,String userValue){
       this.userName=userName;
       this.userValue=userValue;
    }
    public String getUserName() {
       return userName;
    }
    public void setUserName(String userName) {
       this.userName = userName;
    }
    public String getUserValue() {
       return userValue;
    }
    public void setUserValue(String userValue) {
       this.userValue = userValue;
    }

  }

  将实体类实例放入ArrayList列表然后放入reqeust范围内
     Users u1=new Users("1","高中"); 
     Users u2=new Users("2","本科"); 
     Users u3=new Users("3","硕士"); 
     Users u4=new Users("4","博士"); 
     ArrayList array=new ArrayList();
     array.add(u1);
     array.add(u2);
     array.add(u3);
     array.add(u4);
   request.setAttribute("xueli",array);

   使用<html:options>标签生成可选项

  <html:select property="xueli" multiple="true" size="3">
  <html:options 
     collection="xueli"
     property="userName"
     labelProperty="userValue"/>

  </html:select>:

  collection指定存放在request范围内的集合

  property指定<html:option>实际值
  labelProperty指定<html:option>显示到页面上的文本。

  当使用property属性和labelProperty属性时,会根据属性指定的名称调用相应Bean中的getXXX方法来获得属性值。

  生成HTML效果如下

  <option value="1">高中</option>
  <option value="2">本科</option>
  <option value="3">硕士</option>
  <option value="4">博士</option>

  <html:options>
  <html:options collection="collection" labelProperty="displayName" property="value"/>
  其中collection为一个集合,一般是个ArrayList,displayName为前台显示的名称,value为后台实际使用的值.
  例:<html:options collection="arrayList" labelProperty="name" property="id" />

  

html:option的更多相关文章

  1. 在 C# 里使用 F# 的 option 变量

    在使用 C# 与 F# 混合编程的时候(通常是使用 C# 实现 GUI,F#负责数据处理),经常会遇到要判断一个 option 是 None 还是 Some.虽然 Option module 里有 i ...

  2. jsPanel插件Option总结

    jsPanel插件Option总结 学习jsPanel之余对相关的选项进行了总结,便于参考. # 选项名称 类别 简要说明 1 autoclose configuration 设置一个时间在毫秒后,面 ...

  3. jquery option

    转--jquery动态添加option示例 http://www.jb51.net/article/45031.htm //js动态添加option var sel= document.getElem ...

  4. 一个解析json串并组装echarts的option的函数解析

    缘起: 在组装echart页面的时候,遇到这样一个问题,它是一个需要在循环内层的时候,同时循环外层,在内层循环中就要将外层获取的值存入,导致了一种纠缠状态,费了老劲儿,终于得到如下解决.记录之,绿色为 ...

  5. AngularJS下拉列表select在option动态变化之后多出了一个错误项的问题

    场景: Select初始化之后,选中select的某个选项 通过AngularJS更新select的选项 错误写法: HTML(使用ng-repeat) <div ng-app="Te ...

  6. select初始化添加option,通过标签给出回显值,由于回显值和初始化值option中有一个值重复,去重等问题!

    第一张图片: 第二张图片 /** *该方法是为了去重,所谓去重就是 因为回显给select附上了值并设置为selected选中状态,而在我们初始化所有的select添加option元素中于回显的值重复 ...

  7. 解决 odoo.py: error: option --addons-path: The addons-path 'local-addons/' does not seem to a be a valid Addons Directory!

    情况说明 odoo源文件路径-/odoo-dev/odoo/: 我的模块插件路径 ~/odoo-dev/local-addons/my-module 在my-module中创建了__init__.py ...

  8. echarts中显示效果option中必有的属性

    写一个最简单的效果让option中不可缺少的属性. var option = { xAxis:[ //x轴,数组对象,其下至少有一个对象 {.....} ], yAxis:[//y轴,数组对象,其下可 ...

  9. 让 select 的 option 标签支持事件监听(如复制操作)

    这标题,让option支持事件监听,应该不难的呀,有什么好讲的? 其实还是有的,默认在浏览器代码是无法直接对option标签进行操作的,不仅包括JS事件监听,还是CSS样式设置 查了一些资料,姑且认为 ...

  10. 扩展htmlhelper.DropDownListFor 支持list数据源和option增加属性

    mvc自带的DropDownListFor数据源必须是IEnumerable<SelectListItem>.并且option不支持增加自定义属性.在使用bootstrap-select组 ...

随机推荐

  1. 写一个Android输入法02——候选窗、转换

    上一篇介绍了完成Android输入法的最小化步骤,它只能将按键对应的字符上屏.一般的东亚语言都有一个转换的过程,比如汉语输入拼音,需要由拼音转成汉字再上屏.本文将在前文基础上加入完成转换过程所必需的候 ...

  2. MongoDB初识篇

    前言 一直听说MongonDB,却没有机会接触它,于是决定先从表面上认识它.MongoDB(分布式文档存储数据库)是一种介于关系型数据库和非关系型数据库之间的数据库,而且它是非关系数据库中最像关系型数 ...

  3. ASPxGridView 下拉框不让输入

     DropDownStyle="DropDownList"该属性使combox控件不能手动输入数据,只能在下拉列表中选择

  4. ADX3000 三层网络 纠错

    基于三层网络设计要点: 1 组网配置,两端LAN口,IP地址不同网段,设置主IP地址,当做网段内部的网关使用 2 接口域添加trust接口 3 静态IP,有且仅能有一条,目的IP 0.0.0.0 子网 ...

  5. sql开发技巧总结-1

    1.数据库分类 关系型 非关系型 2.sql语句分类 sql: ddl数据库定义语言  tpl事物处理语言 dcl数据控制语言  dml数据操作语言(insert delete update sele ...

  6. Oracle表的优化一点见解

    Oracle优化的几个简单步骤 数据库优化的讨论可以说是一个永恒的主题.资深的Oracle优化人员通常会要求提出性能问题的人对数据库做一个statspack,贴出数据库配置等等.还有的人认为要抓出执行 ...

  7. C++_引用变量探究

    什么是引用 引用变量是已定义变量的别名. 如何定义引用变量: int rats; int & rodents = rats; 其中&不失地址运算符,而是类型标识符的一部分.就行声明ch ...

  8. stringstream的用法

    stringstream的基本用法 stringstream是字符串流.它将流与存储在内存中的string对象绑定起来. 在多种数据类型之间实现自动格式化. 1.stringstream对象的使用 # ...

  9. 利用Content-disposition实现无刷新下载图片文件

    今天在使用 tinypng.com 这个在线压缩图片的网站时,对其处理完图片后,可以无刷新下载图片感到好奇,于是了解了一下相关实现.无刷新下载可以利用MIME type或者设置Content-disp ...

  10. 关于box-shadow、border-radius不兼容ie8的解决办法

    本来从css3兼容ie9+挺好的,可是总有一些共识要求ie8+,于是就有了我们的苦逼的找解决办法.之前在网上查到一些说用 PIE.htc. But 我就是按照他说的写的没有管用.请教了一下别人才会写了 ...