orange056

[javascript] input태그 특수문자 입력 방지 본문

javascript

[javascript] input태그 특수문자 입력 방지

오렝지방구 2021. 9. 8. 13:48
728x90
반응형
<script>
// 특수문자 입력 방지
function characterCheck(obj){
var regExp = /[ \{\}\[\]\/?.,;:|\)*~`!^\-_+┼<>@\#$%&\'\"\\\(\=]/gi; 
// 허용할 특수문자는 여기서 삭제하면 됨
// 지금은 띄어쓰기도 특수문자 처리됨 참고하셈
if( regExp.test(obj.value) ){
	alert("특수문자는 입력하실수 없습니다.");
	obj.value = obj.value.substring( 0 , obj.value.length - 1 ); // 입력한 특수문자 한자리 지움
	}
}
</script>

우선 특수문자를 제거해주는 함수를 만들어준다.

위 특수문자가 입력 될 경우 특수문자 한자리를 지워주고 alert창을 띄운다.

 

<input type="text" id="text" name="text" onkeyup="characterCheck(this)" onkeydown="characterCheck(this)" >

다음으로 input태그를 만들어준다.

그리고 키를 누르고 뗐을 때  characterCheck()함수가 실행되도록 해준다.

이렇게 하면 특수문자를 입력하지 못하도록 할 수 있다.

 

 

▼ 속성들 설명이다. 

onkeydown : 키를 눌렀을때 이벤트이다 (shift, alt, controll, capslock 등의 모든 키에 동작한다. 단 한영변환, 한자 등의 특수키는 인식 못한다).
onkeyup : 키를 눌렀다가 땠을 때 이벤트이다 (onkeydown 에서 인식하는 키들을 인식 한다).
onkeypress : 실제로 글자가 써질때 이벤트이다 (shift, tap, enter 등의 특수키는 인식 못한다).

 

 

728x90
반응형
Comments