频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

不要验证,直接转化科学计数法

来源:csdn.net 作者:邱大为 出处:巧巧读书 2008-06-01 进入讨论组

  在公司实习时候发现个问题,就是大的浮点数从数据库取出后变成了科学计数法显示,而原有的验证控件并不能识别科学技术法,造成数据无法正常保存,临时找到了个解决办法。

  当输入大数据的时候浮点类型在从数据库取出的时候会以科学计数法的形式显示。

  比如输入:2222222222 回显时页面显示为:2.222222222E9 这样在修改时候无法正常保存。  

  解决办法:遇到此种情况时采用JSTL的fmt:format标签进行处理,

  例如车辆单价: <input maxlength="8" type="text" id="cldj" onkeyup="return EnterInputFocus(this, event)" input_must="true" name="cldj" class="must double2" style="width:100%" value='<fmt:formatNumber value="${jyJycljbxxVO.cldj}" maxIntegerDigits="20" maxFractionDigits="10"/>'/>

  注意黑体字部分是车辆单价的显示方式,maxIntegerDigits为整数部分显示的最大长度,maxFractionDigits为小数部分显示的最大长度。

  这样可以将2.222222222E9转化成2,222,222,222 之后采用字符串匹配方式去掉” , ”,采用正则表达式处理,函数为

//用正则表达式处理字符串,去掉格式化之后的浮点数类型

function formatNum(id){                          

       document.getElementById(id).value=document.getElementById(id).value.replace(/,/gi,'');

}

 这个函数可以将2,222,222,222中的” , ”去掉,使其正常显示。

其中id为输入框的id。

在<body>的onload属性中添加如下语句调用formatNum("cldj");  

进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章