需求:  系统前端jsp使用的是easyUi的datagrid展示了一些任务信息,任务信息中有个状态信息显示的值是数字,

需要根据后台保存的映射关系,将状态显示为描述信息。

原来的jsp前端显示:

解决方案,在后台使用创建json数据,然后传递到前台jsp页面中,并使用eval解析后获取值对应的描述,操作如下:

1. 创建json数据(java)

  1. //任务列表
  2. public static final String TASK_PENDING = "0";
  3. //命令处理成功
  4. public static final String TASK_COMMAND_SUCCESS = "1";
  5. //命令处理失败
  6. public static final String TASK_COMMAND_FAILED = "2";
  7. //下载处理成功
  8. public static final String TASK_DOWN_SUCCESS = "3";
  9. //下载处理失败
  10. public static final String TASK_DOWN_FAILED = "4";
  11. //邮件发送成功
  12. public static final String TASK_MAIL_SUCCESS = "5";
  13. //邮件发送失败
  14. public static final String TASK_MAIL_FAILED = "6";
  15. //处理成功
  16. public static final String TASK_COMPLETE = "99";
  17.  
  18. public static String getStatusJson(){
  19.  
  20. JSONObject statusJson = new JSONObject();
  21. statusJson.put(TASK_PENDING, "待处理");
  22. statusJson.put(TASK_COMMAND_SUCCESS, "脚本执行成功");
  23. statusJson.put(TASK_COMMAND_FAILED, "脚本执行失败");
  24. statusJson.put(TASK_DOWN_SUCCESS, "文件下载成功");
  25. statusJson.put(TASK_DOWN_FAILED, "文件下载失败");
  26. statusJson.put(TASK_MAIL_SUCCESS, "邮件发送成功");
  27. statusJson.put(TASK_MAIL_FAILED, "邮件发送失败");
  28. statusJson.put(TASK_COMPLETE, "完成");
  29.  
  30. return statusJson.toString();
  31. }

2. 传值(java)

  1. String statusJson = Constants.getStatusJson();
  2. resultMap.put("statusJson",statusJson);

3. 前端jsp中使用js获取值(js)

  1. //根据传入的状态代码获取状态描述
  2. function getStatusDesc(key){
  3. var obj = eval("(" + '${statusJson}' + ")");
  4. return obj[key];
  5. }

4. 使用datagrid的formatter调用function

  1. {
  2. field: 'status',
  3. title: '状态',
  4. halign: 'left',
  5. align : 'left',
  6. width : '100',
  7. formatter:function(value,row,index){
  8. var desc = getStatusDesc(value);
  9. return desc;
  10. }
  11. },

view code

最终显示结果如下:

后话: 刚开始是在后台使用map作为传值,js中解析map比较复杂,后来改用json后方便多了。

java后台json如何传递到jsp中解析的更多相关文章

  1. 使用Maven构建Java Web项目时,关于jsp中引入js、css文件路径问题。

    今天有点闲,自己动手搭建一个Java Web项目,遇到jsp中引入js.css文件时路径不正确的问题,于是在网上查阅了很多资料,最终都无法解决问题,于是,上stackoverflow找到了解决方法,这 ...

  2. [原创]java WEB学习笔记36:Java Bean 概述,及在JSP 中的使用,原理

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  3. SSH 框架controller向jsp传递List jsp中使用el表达式获取

    mvc可以使用ModelAndViev传递数据选择跳转的视图 controller中的代码, 把一个模拟的表单studentListSimulate传给ModelAndView @RequestMap ...

  4. Java后台JSON数据的使用

    1. List集合转换成json代码 List list = new ArrayList(); list.add( "first" ); list.add( "secon ...

  5. asp.net中json格式化及在js中解析json

    类: public class UploadDocumentItem { public UploadDocumentItem() { } public string DocMuid { get; se ...

  6. 在SqlServer 中解析JSON数据 [parseJSON] 函数 数据库中 解析JSON

    使用如下: SELECT * FROM parseJSON('{ "联系人": { "姓名": "huang", "网名" ...

  7. JSP详细解析

    原文地址: http://www.cnblogs.com/rollenholt/archive/2011/07/04/2097376.html http://www.cnblogs.com/jy024 ...

  8. 前台传递给后台的JSON字符串中的引号 “” 在JAVA后台被转义为 "

    前台传递给后台的JSON字符串中的引号 "" 在JAVA后台被转义为 &quot 1.问题: 前台数据,JSON字符串带有引号 "" ,数据被传递到后台 ...

  9. java传递json数据到前台jsp

    在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键.例如: JSON字符串: var str1 = '{ &q ...

随机推荐

  1. Windows WaveIn 录音

    设置采集音频格式 WAVEFORMATEX waveform; //采集音频的格式,结构体 waveform.wFormatTag = WAVE_FORMAT_PCM;//声音格式为PCM wavef ...

  2. printDocument设置适应边框打印 特重要 找了半天 设置一个属性即可

    private void pd_PrintPage(object sender, PrintPageEventArgs e) { e.Graphics.SmoothingMode = System.D ...

  3. zabbix客户端安装和配置(linux)

    zabbix源码安装客户端 # tar -xvf zabbix-.tar.gz # mv zabbix- zabbix # cd zabbix # ./configure --prefix=/usr/ ...

  4. AME_IExpense费用报表通过AME审批简单例子(案例)

    2014-05-30 Created By BaoXinjian

  5. Python rpartition() 方法

    描述 Python rpartition() 方法用来根据指定的分隔符将字符串进行分割. 如果字符串包含指定的分隔符,则返回一个3元的元组,第一个为分隔符前面的子字符串,第二个为分隔符本身,第三个为分 ...

  6. WordPress For SAE进入后台

    今天遇到一个非常easy可是花了我半个小时的问题:怎样进入WordPress For SAE后台. 介于百度上没有搜索到.所以写了这篇博客,简单,but有用. 首先我们会訪问自己的网站:独立游戏者er ...

  7. 本地PC安装Centos 6.5 操作手册及遇到的问题

    我采取的是使用U盘安装 一.准备工作 1.下载Centos6.5 ISO文件 我在官网上下的6.5版本CentOS-6.5-x86_64-bin-DVD1.iso, 由于CentOS-6.5-x86_ ...

  8. 音频特征提取——pyAudioAnalysis工具包

    作者:桂. 时间:2017-05-04  18:31:09 链接:http://www.cnblogs.com/xingshansi/p/6806637.html 前言 语音识别等应用离不开音频特征的 ...

  9. redis投票计数

    <?php /** * * 缓存利用测试,这里我们获取传过来的投票数据,每次加1,如果增加到了设定值,才将投票 * 次数写回mysql,这大大减轻了与mysql链接的开销,redis的使用由此可 ...

  10. ASP.NET 解决URL中文乱码的解决

    暂时先记录一个方法: 在Web.config文件中configuration下的system.web下加入一个配置项:globalization,主要是设置其requestEncoding,貌似中文系 ...