有时候,页面的下拉框要显示键值对,但是不想从数据库取,此时我们可以写一个枚举类,

Java后台代码

1、枚举类

import java.util.HashMap;
import java.util.Map; public enum Test { One(,"王一"),Two(,"王二"),Three(,"王三"),Four(,"王四"); private int number; private String name; public int getNumber() {
return number;
} public String getName() {
return name;
} private Test(int number, String name){
this.number = number;
this.name = name;
} public static final Map<Integer,String> map = new HashMap<Integer,String>(); //通过number获取对应的name
public static String getDescription(Integer number){
return map.get(number);
} static{
for(Test test : Test.values()){
map.put(test.getNumber(), test.getName());
}
} }

Test.values():其中,values()方法获取枚举类的所有值

在static块中将枚举类键值对放进Map集合中

写个方法验证一下:

Map<Integer,String> map = Test.map;
for(Integer i : map.keySet()){
System.out.println(i + ":" + map.get(i));
}

输出结果:

0:王一
2:王二
3:王三
4:王四

  

接着,这个map传到前台页面,页面接收到的是个Map集合

前台页面JS

将这个Map集合绑定到下拉框对应的selectID

function showSelect(selectID, infoMap){
var select = document.getElementById(selectID);
var options = select.options;
var option;
for(var key in infoMap){
option = new Option(infoMap[key], key);
options.add(option);
}
}

枚举类返回Map键值对,绑定到下拉框的更多相关文章

  1. C# 利用反射将枚举绑定到下拉框

    前言:反射(Reflection)是.NET提供给开发者的一个强大工具,尽管作为.NET框架的使用者,很多时候不会用到反射.但在一些情况下,尤其是在开发一些基础框架或公共类库时,使用反射会使系统架构更 ...

  2. knockoutjs foreach array绑定 表格 下拉框绑定

    转载http://desert3.iteye.com/blog/1480471 knockoutjs foreach array绑定 表格 下拉框绑定 博客分类: Javascript   动态表格使 ...

  3. winform c#绑定combobox下拉框 年度代码。

    winform c#绑定combobox下拉框 年度代码. comboBox1.Items.AddRange("});//邦定数据 comboBox1.Text = DateTime.Now ...

  4. js表单快速取值/赋值 快速生成下拉框

    1.表单取值/赋值公共方法 //表单序列化:文本框的name字段和数据源一致<form id="myForm" onsubmit="return false;&qu ...

  5. MyBatis返回Map键值对数据

    List<Map<String, String>> getMtypeList(); <select id="getMtypeList" resultT ...

  6. GridView 中绑定DropDownList ,下拉框默认选中Label的值

    在GridView中,我们 有时候要绑定值. 前台绑定的代码可以这样 <asp:TemplateField HeaderText="当前状态" ItemStyle-Horiz ...

  7. asp.net中如何绑定combox下拉框数据(调用存储过程)

    #region 绑定类型(商品类型.仓库名称) public void DataType_Bind(int _peoid) { DataTable dt_goodsname = new DataTab ...

  8. ThinkPHP中ajax绑定select下拉框无法显示

    html代码: 控制器代码: 其中的<option value="{$vo.gradeId}">{$one.gradeName}</option> 在操作过 ...

  9. 绑定下拉框时避免触发SelectedIndexChanged事件

    在从数据库读取数据集绑定到下拉框时会立即触发其SelectedIndexChanged事件造成异常,可对其SelectedIndexChanged事件采取先解除后附加的方法解决. cmbXl_gt.V ...

随机推荐

  1. Django - Python3 常用命令

    1.创建Django 项目 执行命令 django-admin.py startproject project_name 2.创建app 执行命令 注意:要先进入项目目录下,cd project_na ...

  2. Java访问ActiveMQ

    1.下载安装ActiveMQ 下载可以去官网下载:http://activemq.apache.org/download.html.我们这里使用windows测试,所以下载windows版本即可. 2 ...

  3. 基因/转录本/任意特征 表达定量工具之featureCounts使用方法 | 参数详解

    featureCounts真的很厉害. 常见的参数(没什么好说的,毕竟是固定的): -a -o input_file1 -F -t -g -Q -T 关键是以下几个参数怎么设置: -f # Perfo ...

  4. bedtools神器 | gtf转bed | bed文件运算

    我们生信技能书有一篇介绍bedtools的文章,可以在微信里搜着看下,非常有用. http://bedtools.readthedocs.io/en/latest/ gtf转bed用Linux命令完全 ...

  5. Winform开发框架之框架演化

    Winform开发框架方面的文章我介绍很多了,有宏观介绍,也有部分技术细节的交流,每次我希望能从不同角度,不同方面来介绍我的WInform开发框架,这些其实都是来源于客户的需求,真实的项目场景.本文主 ...

  6. Destructuring Assignment in JS(解构assignment in js)

    Destructuring Assignment In JavaScript 更省事,代码显得也清楚. Arrays 传统的声明赋值: let johnDoe = ["John", ...

  7. vue 点击一个div,使input获得焦点

    <div class="inputMessage" @click="inputMessage">输入留言</div> <input ...

  8. vux,vue 苹果手机使用position:fixed有问题,如何解决

    苹果手机真是各种坑,导致我都想摔手机呀,但没办法,用苹果的人太多,程序员还是继续在坑的路上行走! 上一篇文章介绍了一些组件,就是使用vux可以解决,苹果手机使用position:fixed的问题 给需 ...

  9. Fiddler抓取https数据包

    Wireshark和Fiddler的优缺点: ①Wireshark是一种在网络层上工作的抓包工具,不仅自带大量的协议分析器,而且可以通过编写Wireshark插件来识别自定义的协议.虽然Wiresha ...

  10. 00-自测5. Shuffling Machine

    Shuffling is a procedure used to randomize a deck of playing cards. Because standard shuffling techn ...