입력란에 숫자 천 단위 표기하는 두 가지 방법이 있다.
1. 정규식 방법
1
2 3 |
$(".price").on("keyup", function(){
$(this).val($(this).val().replace(/\,/g, '').replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,')); }); |
2. toLocaleString() 함수
1
2 3 |
$(".price").on("keyup", function(){
$(this).val($(this).val().toLocaleString("ko-KR")); }); |
toLocaleString() 함수를 이용하면 더 간편하게 사용할 수 있지만 각 나라별 금액 표시 방법이 다르기 때문에 해당 국가 코드로 설정을 해줘야 한다.
하지만 locale 파라미터를 설정하지 않아도 사용자 로컬 환경의 locale로 default 됨으로 자동으로 설정될 것이다.
1
2 3 |
$("input[type=number], input[type=tel]").filter(".comma").on("keyup", function(){
$(this).val($(this).val().replace(/[^0-9]/g, "").toLocaleString()); }); |
위 소스와 같이 해당 타입에 "comma"라는 클래스만 추가하여 숫자만 입력되고 천단위 금액 표시까지 되도록 공통화하는 것이 좋을 것이다.
'JavaScript > JQuery' 카테고리의 다른 글
[jQuery] jQuery 표현식, selector 확장 검색 (like 검색) (0) | 2022.03.22 |
---|---|
[jQuery] Ajax의 Success와 Done의 차이 (0) | 2022.03.08 |
[jQuery] Iframe 높이 자동조절하기 (0) | 2021.10.26 |
[JQuery] input 태그 대소문자 변환 (0) | 2021.07.02 |
[JQuery] 입력창 숫자만 입력 (0) | 2021.07.02 |