Conseguir efecto: los
números son automáticamente milésimas, llenados en números
HTML correspondiente:
id de entrada = "costo recibido" nombre = "costo recibido" valor = "0"
marcador de posición = "" clase = "control de formulario"
estilo = "altura :; ancho: px; margin-bottom: 0px; "
type =" text "οnchange =" checkNum (this) "οnmοuseοver =" removeNumNode (this) "οnmοuseοut =" checkNum (this) ")
Js correspondiente:
function milPuntos (obj) {// input obj = 123456.7890
if (obj0) { return 0; } si (obj
'') { retorno ''; }
//剔除NAN
if(obj!==obj){
return '';
}
if(null==obj){
return '';
}
if(obj==undefined){
return '';
}
var mnyReg = /^([1-9][0-9]*|(([0]\.[0-9]{0,2}[1-9]\d*|[1-9][0-9]*\.\d*)))$/;//根据需求修改
if(!(mnyReg.test(obj))){
/*debugger
obj,minus = detMinus(obj);
alert(obj);
alert(minus);*/
obj = returnNormalNum(obj);
}
// alerta (obj);
var n = 2; // 保留 得 小数 位
obj = parseFloat (obj) .toFixed (n); //obj=123456.789
var left = obj.split (".") [0] .split (""). reverse (); // left = [“6”, “5”, “4”, “3” , “2”, “1”]
var right = obj.split (".") [1]; // derecha = “789”
var total = new Array ();
for (i = 0; i <izquierda.longitud; i ++) { total.push (izquierda [i]); if ((i + 1)% 3 == 0 && (i + 1)! = left.length) { total.push (","); } } // total = [“6”, “5”, “4”, ",", “3”, “2”, “1”] var newValue; newValue = total.reverse (). join ("") + “.” + retorno derecho newValue; };
/*String.prototype.replaceAll = function (s1, s2) { return this.replace (new RegExp (s1, "gm"), s2); } * /
// Convierta el número de signo milésimo en la
función de datos original returnNormalNum (num) { if (null! = Num ) { var oldMny = num.replaceAll (",", ""); if (oldMny.indexOf (".") > 0) { oldMny = oldMny.replace (/ 0 +? /, ""); / / Elimina los 0 viejos M ny = old M ny. Reemplaza (/ [.] /, ""); // Elimina el 0 extra en la cola oldMny = oldMny.replace (/ [.]
/ ," " ) ;/ / A otras porciones de cola pluralidad resto de 0 O L D M n- Y=o l d M n y . r e p l a c e ( / [ . ] /, ""); // Si el último dígito es. entonces elimine
}
return oldMny;
}
};
/ Función detMinus (num) { depurador var less = ''; if (num.charAt (0) == '-') { menos = '-'; Seguramente = num.slice (1); } Devolución o menos; }
/
function checkNum(obj) {
//debugger;
var num = obj.value;
//alert(num);
//1.先去除空格,判断是否空值和非数
num = num + "";
num=num.replaceAll(",","");
num = num.replace(/[ ]/g, ""); //去除空格
if (num == "") {
$(obj).val("0");
return;
}
if (isNaN(num)){
$(obj).val("0");
return;
}
num=parseInt(num*10000)/10000;
num=num.toString();
var rs = num.indexOf('.');
if (rs < 0) {
rs = num.length;
num += '.';
}
while (num.length <= rs + 2) {
num += '0';
}
//2.针对是否有小数点,分情况处理
var index = num.indexOf(".");
if (index==-1) {//无小数点
var reg = /(-?\d+)(\d{3})/;
while (reg.test(num)) {
num = num.replace(reg, "$1,$2");
}
} else {
var intPart = num.substring(0, index);
var pointPart = num.substring(index + 1, index + 3);
var reg = /(-?\d+)(\d{3})/;
while (reg.test(intPart)) {
intPart = intPart.replace(reg, "$1,$2");
}
num = intPart +"."+ pointPart;
}
$(obj).val(num);
}
function checkTableNum(num) {
//1.先去除空格,判断是否空值和非数
num = num + "";
num = num.replace(/[ ]/g, ""); //去除空格
if (num == null||num=='null'||typeof(num) == "undefined"||num== "undefined") {
return '0.00';
return;
}
if (num == "") {
return '0.00';
return;
}
if (num == "0") {
return '0.00';
return;
}
if (isNaN(num)){
return '0.00'
return;
}
num=parseInt(num*10000)/10000;
num=num.toString();
var rs = num.indexOf('.');
if (rs < 0) {
rs = num.length;
num += '.';
}
while (num.length <= rs + 2) {
num += '0';
}
//2.针对是否有小数点,分情况处理
var index = num.indexOf(".");
if (index==-1) {//无小数点
var reg = /(-?\d+)(\d{3})/;
while (reg.test(num)) {
num = num.replace(reg, "$1,$2");
}
} else {
var intPart = num.substring(0, index);
var pointPart = num.substring(index + 1, index + 3);
var reg = /(-?\d+)(\d{3})/;
while (reg.test(intPart)) {
intPart = intPart.replace(reg, "$1,$2");
}
num = intPart +"."+ pointPart;
}
return num;
}
function removeNumNode (obj){
var num = obj.value;
//alert(num);
//1.先去除空格,判断是否空值和非数
num = num + "";
num=num.replaceAll(",","");
$(obj).val(num);
}
function justNum(obj){
obj.value = obj.value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符
obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');//只能输入两个小数
if(obj.value.indexOf(".")< 0 && obj.value !=""){//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
obj.value= parseFloat(obj.value);
}
}
function toMenNum(num){
// var num = $("#"+obj).val();
//alert(num);
//1.先去除空格,判断是否空值和非数
num = num + "";
num=num.replaceAll(",","");
num = num.replace(/[ ]/g, ""); //去除空格
if (num == "") {
$(obj).val("0");
return;
}
if (isNaN(num)){
$(obj).val("0");
return;
}
num=parseInt(num*10000)/10000;
num=num.toString();
var rs = num.indexOf('.');
if (rs < 0) {
rs = num.length;
num += '.';
}
while (num.length <= rs + 2) {
num += '0';
}
//2.针对是否有小数点,分情况处理
var index = num.indexOf(".");
if (index==-1) {//无小数点
var reg = /(-?\d+)(\d{3})/;
while (reg.test(num)) {
num = num.replace(reg, "$1,$2");
}
} else {
var intPart = num.substring(0, index);
var pointPart = num.substring(index + 1, index + 3);
var reg = /(-?\d+)(\d{3})/;
while (reg.test(intPart)) {
intPart = intPart.replace(reg, "$1,$2");
}
num = intPart +"."+ pointPart;
}
return num;
// $("#"+obj).val(num);
}