배경: 프로젝트는 소수점 두 자리를 사용하여 양수 및 음수 부동 소수점 숫자를 처리해야 합니다.
요구 사항: 숫자가 아닌 문자는 자동으로 지워집니다. . 12 자동 패치. 첫 번째 0
원리: 입력 상자에 두 개의 이벤트를 추가합니다. Keyup은 문자열에서 필수가 아닌 문자를 처리하고 Blur는 최종 문자열을 처리합니다. . 이상적인 형식으로 처리 111.11
구현: 입력 문자열
/^d*.?d{0을 나타내기 위해 7개의 일반 규칙을 통해 기본 함수 val을 처리합니다. , 2}$/ val이 ddd.dd 형식인지 확인하고, 있으면 처리하지 않고, 아니면 처리합니다.
/[^.0-9] / 이외의 모든 것을 처리합니다. -val
/(?:d*.d{0,2}|d )/의 숫자 및. 문자를 올바른 형식으로 처리합니다.
/^d $/ 정수일 때 처리
/^.d{0,2}$/ 소수점 이하 자릿수가 없을 때 처리
/^d .d{0,2}$/ 소수점 이하 자릿수가 0~2일 때 처리
/^0 [1-9]d*.?d{0,2 }$/ before val 0이 있을 때 처리
테스트 데이터:
fdfd100.12 122.121 12t12.57 12546 1245. 125.4 154.45.456 .126 005245.121 dfdffd 등
데모 다운로드