jsp页面数据格式化
来源:互联网 发布:数控铣简单图形编程 编辑:程序博客网 时间:2024/06/05 00:48
本来以为数据格式化很简单,但是在今天的工作中发现自己确实有很多的不足。
由于系统分模块开发,导致了jsp页面的el表达式、struts2标签、以及页面样式的不同。让我经历了3个不同的页面格式化阶段。
一、 页面js的数据格式化
工作项目中用到的是easyui的页面
/** * 金额格式化 */ var DM = {digit:2,//小数点位数locale: "RMB ",//币种代号format: "RMB ###,###.##"//显示格式};function decimalFormatter(value,dm){ val = parseFloat(value); return numToCurrency(val);}/** * 数字格式化为金额(加前缀、分隔符、保留两位小数) * @param val * @returns */function numToCurrency(val,dm) {if(dm){DM = dm;}if(isNaN(val) ){ return ''; }var locales =DM.locale.length;var onesFormat = ""; //判断格式化参数是否带有小数位,若有则截取小数部分格式 if (DM.format.indexOf(".") == -1) { onesFormat = DM.format.substring(locales); }else { onesFormat = DM.format.substring(locales, DM.format.indexOf(".")); }var groupLength = 99999999; //获取每组分隔符的长度 if (onesFormat.lastIndexOf(",") != -1) { groupLength = onesFormat.length - onesFormat.lastIndexOf(",") - 1; }val = val.toFixed(DM.digit);var separate = String(val).split(".");var reg = new RegExp("(\\d{1," + groupLength + "})(?=(\\d{" + groupLength + "})+(?:$|\\D))","g");if(separate[1]) {return DM.locale + separate[0].replace(reg,"$1,") + '.' + separate[1];} else {return DM.locale + separate[0].replace(reg,"$1,");}}/** * 金额格式化为数字(去前缀与分隔符) * @param val 金额字符串 * @param groupSeparator 分隔符 * @param prefix 前缀 * @returns */function currencyToNum(val,groupSeparator,prefix) { return val.trim().replace(groupSeparator,'').replace(prefix,'');}
这里是使用正则表达式的规则进行替换的
二、jstl表达式格式化
jstl的格式化主要是使用fmt标签。
首先,在jsp页面引用<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
jstl表达式显然是支持el表达式的。
其次在需要格式化的地方
<fmt:formatNumber value="${realityOccupyAmount}" pattern="RMB #,#00.00#"/>
这样子满足了el表达式的格式化。但是接下来的问题。struts2标签如<s:property>标签也是可以获取值得。这种情况下,置于value中是不能实现格式化的。
其中fmt标签中还有其他的标签。百度文库中的fmt标签较为详细的描述
三、struts2标签格式化
1,在工程目录下创建一个format.properties文件
#number:global.format.money={0,number,RMB #0.00##}global.format.money02={0,number,##0.00}#datetime:global.format.date={0,date,yyyy-MM-dd}global.format.time={0,date,HH:mm:ss}global.format.datetime={0,date,yyyy-MM-dd HH:mm:ss}global.format.datetime02={0,date,yyyy-MM-dd HH\:mm}2,在struts.xml中引用此文件
<constant name="struts.custom.i18n.resources" value="format"></constant>
这里的value值应该为配置文件的文件名。
3,页面上使用struts2标签进行格式化
<s:text name="global.format.money"><s:param value="colCredit()"/></s:text>
这样就将struts2的标签进行了格式化。
struts2的格式化标签还有:
<s:date name="birthday" format="yyyy-MM-dd"/>就是将属性birthday按yyyy-MM-dd的格式进行输出
- jsp页面数据格式化
- JSP页面DATETIME格式化
- jsp页面日期格式化
- jsp页面格式化时间
- jsp页面格式化
- jsp页面日期格式化
- jsp 页面时间格式化
- JSP页面格式化时间
- jsp页面格式化时间
- jsp页面中判空及date类型数据的格式化展示
- 对应页面数据格式化
- 在jsp页面格式化数值
- JSP页面时间类型格式化
- JSP页面中小数格式化
- jsp页面格式化时间输出
- 单独jsp页面 数字格式化
- jsp页面标签时间格式化
- JSP 页面对时间格式化
- http头信息
- Oracle 10g启动后报ORA-16038错误的解决方法
- 2个span标签,一个是图片 一个是文本,对齐
- java语言基础
- 黑马程序员_java语法基础【3】(函数、数组)
- jsp页面数据格式化
- 按钮的拖拽复制
- 使用Shell脚本对Linux系统和进程资源进行监控
- 通过java的反射编写泛型数组
- maven几个知识点
- 浅谈c#中的泛型(一)
- IOS:标签栏与导航栏
- CentOS 环境配置积累
- Java(Android)写文件时指定编码格式的问题