$("#numInput").on("keyup", function () {
$("#numInput").val($("#numInput").val().replace(/[^0-9]/g, ""));
});
위에 소스는 키 입력 시 정규식으로 현재 입력된 값이 문자인지 숫자인지 체크해서 숫자이면 입력 허용, 문자이면 입력된 문자는 제거되도록 되있습니다.
replace() 메서드는 어떤 패턴에 일치하는 일부 또는 모든 부분이 교체된 새로운 문자열을 반환합니다. 문자열이나 정규식(RegExp)이 될 수 있습니다.
3자리 마다 콤마 추가
$("#numInput").on("keyup", function () {
// 이전 값에서 콤마 제거
var oldData = $("#numInput")).val().replace(/,/gi, "");
// 신규 입력된 값 + 이전 입력값 합친 다음 콤마 다시 생성
var newData = oldData.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
// 값 출력
$("#numInput")).val(newData);
});
이전에 입력된 값에서 콤마를 제거 한다음 새로 입력한 값 포함해서 콤마를 다시 생성하여 값을 출력 합니다.
3자리 일 경우
4자리 일 경우
5자리 일 경우
6자리 일 경우
'Programing > JS' 카테고리의 다른 글
[Javascript] 다양한 배열 메서드(순회, 반복)를 알아보자 (0) | 2020.10.31 |
---|---|
[정규식] 정규표현식 패턴 분석 및 자주 사용하는 메서드 (0) | 2020.10.19 |
[정규식] 소수점 및 자리수 체크 (3) | 2020.10.19 |
[정규식] Jquery(제이쿼리) 및 정규식을 이용한 Body 속성 찾기 (0) | 2020.10.17 |