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

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

原来的jsp前端显示:

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

1. 创建json数据(java)

    //任务列表
public static final String TASK_PENDING = "0";
//命令处理成功
public static final String TASK_COMMAND_SUCCESS = "1";
//命令处理失败
public static final String TASK_COMMAND_FAILED = "2";
//下载处理成功
public static final String TASK_DOWN_SUCCESS = "3";
//下载处理失败
public static final String TASK_DOWN_FAILED = "4";
//邮件发送成功
public static final String TASK_MAIL_SUCCESS = "5";
//邮件发送失败
public static final String TASK_MAIL_FAILED = "6";
//处理成功
public static final String TASK_COMPLETE = "99"; public static String getStatusJson(){ JSONObject statusJson = new JSONObject();
statusJson.put(TASK_PENDING, "待处理");
statusJson.put(TASK_COMMAND_SUCCESS, "脚本执行成功");
statusJson.put(TASK_COMMAND_FAILED, "脚本执行失败");
statusJson.put(TASK_DOWN_SUCCESS, "文件下载成功");
statusJson.put(TASK_DOWN_FAILED, "文件下载失败");
statusJson.put(TASK_MAIL_SUCCESS, "邮件发送成功");
statusJson.put(TASK_MAIL_FAILED, "邮件发送失败");
statusJson.put(TASK_COMPLETE, "完成"); return statusJson.toString();
}

2. 传值(java)

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

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

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

4. 使用datagrid的formatter调用function

 {
field: 'status',
title: '状态',
halign: 'left',
align : 'left',
width : '100',
formatter:function(value,row,index){
var desc = getStatusDesc(value);
return desc;
}
},

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. Linux命令-实时监测命令:watch

    watch 是一个非常实用的命令,基本所有的 Linux 发行版都带有这个小工具,如同名字一样,watch 可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行..在Linux下,watch是周期性 ...

  2. 数组插件----linq.js

    优点 1.支持jQuery插件的方式.jquery.linq.min.js. 2.也可以像普通js方法一样使用.linq.min.js. 3.当然用习惯VS的童鞋肯定希望有个良好的智能感知,是的,它支 ...

  3. input text的所有事件

    onBlur 当 text field失去聚焦的时候执行一些代码 onChange 当 text field失去聚焦并且它的值发生变动的时候执行一些代码 onClick 当用户在 text field ...

  4. selenium+python : Waits---study

    from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.s ...

  5. 什么是Asterisk,它如何帮助我们的呼叫中心?

    如今的呼叫中心与过去的呼叫中心有很大差异.过去,一间房屋或一座大楼,装上硬接线的POTS电话,招聘几名员工就可以建立一个呼叫中心.如今,这样的情形已经一去不复返,因为有许多新技术让呼叫中心变得更像是一 ...

  6. golang(5)使用beego 开发 api server 和前端同学拆分开发,使用swagger

    1,beego api Swagger 是一个规范和完整的框架,用于生成.描写叙述.调用和可视化 RESTful 风格的 Web 服务.整体目标是使client和文件系统作为服务器以相同的速度来更新. ...

  7. js完美的div拖拽实例代码

    方案一: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  8. Python rsplit() 方法

    描述 Python rsplit() 方法通过指定分隔符对字符串进行分割并返回一个列表,默认分隔符为所有空字符,包括空格.换行(\n).制表符(\t)等.类似于 split() 方法,只不过是从字符串 ...

  9. js中push和join方法使用介绍

    push和join方法想必大家并不陌生吧,在本文将为大家详细介绍下js中的push和join方法的使用.代码: <script type="text/javascript"& ...

  10. asp.net MVC学习的一些总结

    起初认为视图,控制器,模型它们是完全没有耦合的,真正用了一段时间MVC发现错了. 但通过抽象让他们完全没有耦合,也不是不可能. 1.奇怪的连接地址 用MVC之前,一直认为页面必然访问某个文件.用了MV ...