키보드 입력시 유효성 검사를 위해 키보드 입력 제한을 처리할 필요가 있다.
간단하게 입력 제한을 막는 방법으로 속성값에 처리하는 방법이 있다.
$(document).on("keyup", "input[속성명 지정]", function() {$(this).val( $(this).val().replace( 정규식 ,"") );})
이러한식으로 키보드 입력이 있을때 input 태그에 지정한 속성이 있으면 정규식에 따라 처리하는 방법이다.
ex) 숫자만 입력
-Javascript
$(document).on("keyup", "input[numberOnly]", function() {$(this).val( $(this).val().replace(/[^0-9]/gi,"") );})
-HTML
<input type="text" value="" class="number" numberOnly/>
numberOnly속성이 추가된 input태그에는 치환처리로 인해 더이상 숫자외에는 입력이 불가하다.
ex) 숫자 및 '-' 하이픈만 입력받기
$(document).on("keyup", "input[telOnly]", function() {$(this).val( $(this).val().replace(/[^0-9-]/gi,"") );})
ex) 특수문자 중에 쉼표만 허용하기
$(document).on("keyup", "input[commasOnly]", function() {$(this).val( $(this).val().replace(/[<>(){}[\]\-_=+|\/\\'\;.:\"`~!?@#$%^&*]/gi,"") );})
ex) 한글, 영문, 숫자만 받기
$(document).on("keyup", "input[noSpecial]", function() {$(this).val( $(this).val().replace(/[^ㄱ-힣a-zA-Z0-9]/gi,"") );})
정규식에 따라 자유롭게 수정하여 사용할 수 있다.
'WEB > Javascript' 카테고리의 다른 글
Javascript - form태그 내부 ajax처리시 2번 전송되는 현상 (0) | 2020.01.22 |
---|---|
Javascript - 전개구문, 전개연산자, ...문법, {...data} / rest, spread properties (0) | 2020.01.10 |
Javascript - Free SVG 한국맵 제어 처리 (4) | 2019.10.16 |
Javascript - 문자열 변경하기(replace, replaceAll) (0) | 2019.10.02 |
HTML, Javascript - 배열 객체데이터를 출력 후 정렬하기(sort() 메소드 활용하기) (0) | 2019.09.08 |