<html>
<body>
<input type="text" onkeyup="numberToCommas(this)" />
</body>
</html>
키보드를 누를 때마다 함수를 호출
function numberToCommas(obj) {
var n = obj.value;
if (n == "") {
obj.value = "";
}
//음수 계산
var minus = '';
if(n.charAt(0) == "-") {
var minus = "-";
}
//문자열, 소수점2개 제한
n = n.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');
//콤마 지우기
n = n.replace(/\,/g, '');
//소수점 유무
if(n.indexOf('.') > 0) {
var decimal = n.split('.');
var integer = decimal[0].replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,');
//마이너스 붙이기
obj.value = minus + integer + '.' + decimal[1];
} else {
//마이너스 붙이기
obj.value = minus + n.replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,');
}
}
정규표현식 뻐큐

'싱니의 꿀함수 > Javascript, Jquery' 카테고리의 다른 글
[Javascript][Jquery] 기간에 따른 연속 날짜 나열하기 (1) | 2022.09.15 |
---|