javascript中sql 保留小数点两位后两位,第三位数字大于1时则进1

Posts - 42,
Articles - 0,
Comments - 17
打不死的小小白~
12:52 by 半梦半醒。, ... 阅读,
JS限制input用户输入的为数字并且有小数的时候最多保留两位小数,代码如下:
html部分:
&input type="number"
onkeypress="return myNumberic(event)" /&
function myNumberic(e,len) {
var obj=e.srcElement || e.
var dot=obj.value.indexOf(".");//alert(e.which);
len =(typeof(len)=="undefined")?2:
key=e.keyCode|| e.
if(key==8 || key==9 || key==46 || (key&=37
&& key&=40))//这里为了兼容Firefox的backspace,tab,del,方向键
if (key&=57 && key&=48) { //数字
if(dot==-1)//没有小数点
else if(obj.value.length&=dot+len)//小数位数
} else if((key==46) && dot==-1){//小数点
以上内容来自http://bbs.csdn.net/topics/,记录一下~用JS获取小数点后两位数字方法
用Javascript取float型小数点后两位,例22.127456取成22.13,如何做?
1. 最笨的办法....... [我就怎么干的.........]
1&function&get()2&{
3&&&&var&s&=&22.127456&+&"";
4&&&&var&str&=&s.substring(0,s.indexOf(".")&+&3);
5&&&&alert(str);
2. 正则表达式效果不错
&script&type="text/javascript"&
2&onload&=&function(){3&&&&var&a&=&"23.456322";
4&&&&var&aN
5&&&&var&re&=&/([0-9]+/.[0-9]{2})[0-9]*/;
6&&&&aNew&=&a.replace(re,"$1");
7&&&&alert(aNew);
8&}9&&script&
3. 他就比较聪明了.....
1&&script&2&var&num=22.127456;3&alert(&Math.round(num*100)/100);
4&&script&&
4.会用新鲜东西的朋友....... 但是需要 IE5.5+才支持。
&script&2&var&num=22.127456;3&alert(&num.toFixed(2));
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。1845人阅读
Javascript(216)
工作中很常用的东西:
例1,使数字1111111变成11,111,111.00,保留两位小数。
&script type=&text/javascript&&
function outputmoney(number) {
number = number.replace(/\,/g, &&);
if(isNaN(number) || number == &&)return &&;
number = Math.round(number * 100) / 100;
if (number & 0)
return '-' + outputdollars(Math.floor(Math.abs(number) - 0) + '') + outputcents(Math.abs(number) - 0);
return outputdollars(Math.floor(number - 0) + '') + outputcents(number - 0);
//格式化金额
function outputdollars(number) {
if (number.length &= 3)
return (number == '' ? '0' : number);
var mod = number.length % 3;
var output = (mod == 0 ? '' : (number.substring(0, mod)));
for (i = 0; i & Math.floor(number.length / 3); i++) {
if ((mod == 0) && (i == 0))
output += number.substring(mod + 3 * i, mod + 3 * i + 3);
output += ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
return (output);
function outputcents(amount) {
amount = Math.round(((amount) - Math.floor(amount)) * 100);
return (amount & 10 ? '.0' + amount : '.' + amount);
&input type=text
maxlength=&8& id=&test& onblur=&this.value=outputmoney(this.value);& &
例2,使数字1111111变成11,111,111---和使11,111,111变成1111111---整数--
&!doctype html public &-//w3c//dtd xhtml 1.0 transitional//en& &http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd&&
&html xmlns=&http://www.w3.org/1999/xhtml&&
&meta http-equiv=&content-type& content=&text/ charset=gb2312& /&
&title&js 格式化金额的代码---www.jb51.net&/title&
&script language=&javascript&&
function tran(id)
var v, j, sj, rv = &&;
v = id.value.replace(/,/g,&&).split(&.&);
j = v[0].length % 3;
sj = v[0].substr(j).toString();
for (var i = 0; i & sj. i++)
rv = (i % 3 == 0) ? rv + &,& + sj.substr(i, 1): rv + sj.substr(i, 1);
var rvalue = (v[1] == undefined) ? v[0].substr(0, j) + rv: v[0].substr(0, j) + rv + &.& + v[1];
if (rvalue.charCodeAt(0) == 44)
rvalue = rvalue.substr(1);
id.value =
function tran2(id)
v = id.value.replace(/,/g,&&);
&style type=&text/css&&
body,td,th,input {
font-size: 12px;
&/style&&/head&
&input name=&tt& type=&text& id=&tt& size=&80& onkeyup=&tran(this)& /&
&input name=&tt& type=&text& id=&tt2& size=&80& onkeyup=&tran2(this)& /&
访问:3215854次
积分:30869
排名:第190名
原创:122篇
转载:1982篇
评论:268条
(6)(20)(58)(37)(45)(108)(98)(101)(99)(137)(209)(392)(324)(117)(150)(5)(25)(88)(86)你的位置:
js小数点操作方法(两位小数点)总结
用Javascript取float型小数点后两位例22.127456取成22.13,如何做?1. 最笨的办法:function get()
var s = 22.127456 + &&;
var str = s.substring(0,s.indexOf(&.&) + 3);
alert(str);
}2. 正则表达式效果不错:&script type=&text/javascript&&
window.onload = function(){
var a = &23.456322&;
var re = /([0-9]+\.[0-9]{2})[0-9]*/;
aNew = a.replace(re,&$1&);
alert(aNew);
&/script&3. 他就比较聪明了:&script&
var num=22.127456;
alert( Math.round(num*100)/100);
&/script&4.会用新鲜东西的朋友....... 但是需要 IE5.5+才支持。&script&
var num=22.127456;
alert( num.toFixed(2));
&/script&5. 数字舍入toFixed()其中是利用一个函数toFixed 来取小数点几位的!&script language=&javascript&&
var a = &0.11&;
var b = &0.2801&;
var c = &1.002&;
var sum1 = parseFloat(a)+parseFloat(b)+parseFloat(c);
var sum2 = (parseFloat(a)+parseFloat(b)+parseFloat(c)).toFixed(4)
document.write(&a+b+c=&+sum1);
document.write(&&br/&&)
document.write(&a+b+c=&+sum2)
&/script&a,b,c相加本来为1.3921,但sum1得出的结果为:1.0001,显然不正确,通过toFixed(n)方法修正后(n是精确的小数点位数),得到正确结果。例如:parseFloat(1.392143).toFixed(3)=1.392;顺便附上php获取小数点后两位的方法:&?php
echo round(12.);
echo '&br /&';
echo round(12.);
转载请注明:
你可能还会对下面的内容感兴趣:
文js小数点操作方法(两位小数点)总结
浏览 6038 次
Please enable JavaScript to view the
(C) 半叶寒羽(Yanue.net) |
| 粤ICP备号在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
像遮掩的字符串
.24..234.234.234..2423423......423.2.23.423.423.4.23
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
var re = /.*\..*?\..*/;
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
看错题目了,要找大于1个小数点的:/\.{2,}|\..+\./
其中:\.{2,} 判断继续小数点大于1的 \..+\. 判断不连续的
综合起来也可以 /\..*\./
同步到新浪微博
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。}

我要回帖

更多关于 sql 保留小数点两位 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信