숫자 9자리까지만 입력하도록 제한하고 싶을 때
⇒ 그리드에서 해당 셀 클릭해서 editfilter: digit, editlimit:9로 설정
editfilter를 설정하지 않고 editlimit만 설정하면
⇒ 9자리 초과되는 값이 입력된다. 입력 후 focus out 하면 숫자가 9자리로 자동보정되어 음수가 되버림.
editfilter를 설정했는데도 제한이 안된다…
⇒ edittype을 masknumber에서 mask로 바꾸니까 됨
editlimit을 0으로 설정하면 바인딩된 데이터셋의 해당 열의 크기로 설정된다.
그리드에서 숫자 소수점, 자릿수 입력 제한하기
1. 상황
데이터셋의 T 컬럼 값이 Y일 때만 P 컬럼 값을 입력할 수 있게 하고 싶은 상황.
P 컬럼은 디비에서 소수점 위 9자리, 아래 2자리이므로, 사용자가 입력할 때 해당 자리수에 맞게 입력하도록 설정해야 한다.
1) Action 탭
- displaytype: number
- edittype: masknumber (edit을 할 때 mask를 적용한 값을 보여줌)
2) Appearance 탭
- mask: 아래처럼 설정
- expr:T=='Y'?"###,###,###.00":"” (T가 Y 값일 때만 마스크를 설정한다. 아닐 때는 입력하지 못하게 “”로 설정한다.)
2) GridEdit 탭
- editflter: number
- edit할 때, 어떤 타입의 값을 입력할 수 있는지 제한한다.
- digit은 숫자만(각 자리가 숫자), integer는 정수만 가능하므로 소수 입력이 필요한 상황에 맞지 않음
- number는 소수도 입력 가능 (모든 종류의 number)
- editlimit
- editlimitbymask
- maskEdit의 mask 속성 값에 따라 입력을 제한한다.
- both로 설정 (⇒ 이걸 안 해서 자릿수 제한이 제대로 안 됐었음…)
- both는 integer와 decimal 둘 다를 뜻함