asp.net+js实现金额格式化_Javascript教程-查字典教程网
asp.net+js实现金额格式化
asp.net+js实现金额格式化
发布时间:2016-12-30 来源:查字典编辑
摘要:根据用户需求,在输入金额时要格式化,即每三位数字加逗号分隔,并保留两位小数。考虑到用户的体验,随使用JS对金额进行格式化,前台代码如下:复制...

根据用户需求,在输入金额时要格式化,即每三位数字加逗号分隔,并保留两位小数。

考虑到用户的体验,随使用JS对金额进行格式化,前台代码如下:

复制代码 代码如下:

<asp:TextBox ID="txtAmount" runat="server" onkeypress="check()" onkeyup="run(this)"></asp:TextBox>

JS代码如下:

复制代码 代码如下:

//======检查输入的是否为数字

function check() {

if (!((window.event.keyCode >= 48 && window.event.keyCode <= 57) || window.event.keyCode == 46 || window.event.keyCode == 45)) {

window.event.keyCode = 0

}

}

//======格式化文本框的金额

function run(obj) {

var objvalue = obj.value.replace(/[,]/g, ""),

objlength = objvalue.length,

dtmp = objvalue.indexOf("."),

neg = objvalue.indexOf("-");

var inttmp = 0,

floattmp = -1;

if (dtmp != -1) {

inttmp = dtmp == 0 " : new String(objvalue).substring(0, dtmp);

floattmp = new String(objvalue).substring(dtmp + 1, objlength + 1);

floattmp = floattmp.replace(/[^0-9]/g, "");

}

else {

inttmp = objvalue;

}

if (neg == 0) {

inttmp = inttmp.replace(/[-]/g, "");

}

inttmp = inttmp.replace(/[^0-9]/g, "");

var tmp = "", str = "0000";

for (; inttmp.length > 3; ) {

var temp = new String(inttmp / 1000);

if (temp.indexOf(".") == -1) {

tmp = ",000" + tmp;

inttmp = temp;

}

else {

var le = new String(temp).split(".")[1].length;

tmp = "," + new String(temp).split(".")[1] + str.substring(0, 3 - le) + tmp;

inttmp = new String(temp).split(".")[0];

}

}

inttmp = inttmp + tmp;

obj.value = neg == 0 " + inttmp + runing(floattmp) : inttmp + runing(floattmp);

}

//======整理小数部分

function runing(val) {

if (val != "-1" && val != "") {

var valvalue = 0 + "." + val;

if (val.length >= 2) {

valvalue = parseFloat(valvalue).toFixed(2);

}

var temp = "." + valvalue.split(".")[1];

return temp;

}

else if (val != "0" && val == "") {

return ".";

}

else {

return "";

}

}

同时因为金额可输入负数,所以加上“neg = objvalue.indexOf("-")”的判断。

关于金额的格式化问题,经常遇到这种事情,觉得这个还可以,也就留着,以供以后查阅方便!

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类