2017-09-28 27 views
-1

我有这样添加逗号到文本字段中显示值

文本字段中的数据从数据库中把文本框

enter image description here

,现在我想添加逗号到它的每一个3位数字,我想用jQuery解决它,是有可能

+1

的可能的复制[如何打印带有逗号作为在JavaScript千位分隔符的数(https://stackoverflow.com/questions/2901102/how-to-print-一个数与 - 逗号-AS-数以千计的隔膜式的JavaScript) – dave

回答

5

解决方法1:你可以简单地使用Number.toLocaleString()

var number = 1557564534; 
 
document.body.innerHTML = number.toLocaleString();

解决方案2:你可以使用正则表达式来一个进行简单的jQuery插件

$.fn.digits = function() { 
 
    return this.each(function() { 
 
    $(this).text($(this).text().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,")); 
 
    }) 
 
} 
 

 
$("span").digits();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<span id="numbers">3456754323456432</span>

0

你可以输入解析成float和使用number.toLocalString() ;

var data = $("#getInfo"); 
 
var dataParse = parseFloat(data.val()); 
 

 
dataParse = dataParse.toLocaleString(); 
 

 
$("#getInfoNew").val(dataParse);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
BEFORE<input type="text" id="getInfo" value="14000000,0"><br> 
 
AFTER<input type="text" id="getInfoNew" value="">

1

这里是的jsfiddle为您在键入时做内联格式。 https://jsfiddle.net/wm61qzsm/

JS代码:

$('input.number').keyup(function(event) { 

    // skip for arrow keys 
    if(event.which >= 37 && event.which <= 40) return; 

    // format number 
    $(this).val(function(index, value) { 
    return value 
    .replace(/\D/g, "") 
    .replace(/\B(?=(\d{3})+(?!\d))/g, ",") 
    ; 
    }); 
}); 
相关问题