SMART datagrid v1.4 > Concepts
SMART databrid 모듈에 포함된 MaskCellEditor는 제한된 길이의 특별한 형식으로 사용자 입력을 제한하는 셀 편집기로서 여러 부분에서 유용하게 사용될 수 있다. 마스크 셀 편집기는 mask 속성을 통해 편집 형식을 지정한다.
형식 문자열은 입력 범위 등을 지정하는 특수 문자들과 편집기에 문자 그대로 표시되는 literal 문자들로 구성된다. 아래 테이블들에 특별히 해석되고 다뤄지는 형식 문자들이 나열되어 있다.
문자 | 입력 가능 문자들 | 설명 | 예제 |
---|---|---|---|
'0' | '0' ~ '9' | 숫자를 반드시 입력 | 000000-0000000 |
'9' | '0' ~ '9', space | 숫자나 공백 | 999-0000-0000 |
'#' | '0' ~ '9', '-', '+', space | 숫자, 기호, 혹은 공백 | ###-0000 |
'L' | 'A' ~ 'Z', 'a' ~ 'z' | 알파벳 반드시 입력 | LLL-000-00 |
'?' | 'A' ~ 'Z', 'a' ~ 'z', space | 알파벳이나 공백 | LLL-000-?? |
'A' | 'A' ~ 'Z', 'a' ~ 'z', '0' ~ '9' | 알파벳 혹은 숫자 반드시 입력 | AAA-0000 |
'a' | 'A' ~ 'Z', 'a' ~ 'z', '0' ~ '9', space | 알파벳, 숫자, 혹은 공백 | aaa-0000-aaa |
지정된 위치에서 입력을 하지 않은 것과 space가 입력된 것을 모두 '공백'으로 동일하게 간주한다. 편집기에서 공백 위치를 제거하거나, 좌우 trim한 후 저장하는 등의 옵션이 있다.
문자 | locale key | 설명 | 예제 |
---|---|---|---|
'.' | decimalSep | 소수점 | 000.00 |
'/' | dateSep | 날짜 구분자 | 0000/00/00 |
':' | timeSep | 시간 구분자 | 00:00:00 |
구분자는 형식 문자가 아니라 literal 문자다. 기본적의 구분자를 포함하는 literla은 셀 값으로 저장되지 않지만, 편집기에 구분자들을 같이 저장하는 옵션이 있다.
아래 테이블에는 특수 문자나 구분 문자들을 literal로 사용할 수 있게 하는 치환 문자와, 실행 시간 입력된 문자를 변환하는 제어 문자들이 나열되어 있다.
문자 | 설명 | 예제 |
---|---|---|
'\' | 다음 '\'이 나올 때까지 형식 문자들을 특수 문자 대신 literal 문자로 해석한다. | \A\LL-000 |
'{' | 다음 '}'이 나올 때까지 password 문자로 표시한다. | 000000-{0000000} |
'>' | 다음 '>'이 나올 때까지 대문자로 변환한다. | >LLL>-<LLL< |
'<' | 다음 '<'이 나올 때까지 대문자로 변환한다. | >LLL>-<LLL< |
grid.setColumns([{
name: 'colId',
editor: {
type: 'mask',
mask: '000-LL-000'
}
},
...
]);