input 창에 입력 시 한글 입력을 막고 싶다.
입력된 값에 허용되지 않은 문자는 정규표현식을 사용하여 문자열에서 제외하는 replace() 함수를 실행할 것이다.
<el-input @input="bindKorean(slotData.$index)" v-model="slotData.row.name"></el-input>
@input 을 이용하여 함수를 호출한다.
const bindKorean = (index) => {
const regExp = /[^0-9a-zA-Z]/g;
if (regExp.exec(state.list[index].name)) {
state.list[index].name = state.list[index].name.replace(regExp, '');
}
};
.exec 메소드는 정규식 패턴에 맞는 문자열 탐색을 수행하는 메소드이다.
문자열을 탐색하여 일치하는 값을 찾으면
.replace 로 해당 문자열을 지운다.
@input 을 이용하여 입력 할 때 마다 발생하기 때문에 한글 입력이 제한 된다.
'FRONT > JavaSrcipt' 카테고리의 다른 글
[JavaScript] 초 간단 유효성 체크 ( 이메일, IP, Port, 비밀번호, 글자 길이 제한 ) (0) | 2023.07.10 |
---|---|
[JavaScript] 두 개의 객체 비교 후 중복 값 제거 (0) | 2023.06.15 |
[Javascript] 테이블 행 숨기기/보이기 - display (0) | 2023.05.16 |
[JavaScript] id 추가 , 수정 , 삭제 (0) | 2023.05.16 |
[JavaScript] QuerySelector(), QuerySelectorAll() , ClassList 추가/ 삭제 (0) | 2023.05.16 |