text타입 날짜 편집기
field.dataType = 'datetime' 로 설정시 그리드는 데이터를 date객체로 관리하게 됩니다.
그리드에 저장된 값 반환시 'Wed Jul 03 1996 00:00:00 GMT+0900 (대한민국 표준시)' 이렇게 표현되어 사용하기 불편하다면
Date.toLocaleString()으로 text변환하여 사용하거나 dataProvider.getOutputRow()로 포맷을 지정하여 사용해야 합니다.
가져온 텍스트 그대로 값을 반환하고 싶다면 field.dataType = 'datetime'가 아니라 field.dataType = 'text'로 설정해서 사용해야 합니다.
주의 사항
텍스트로 관리되기 때문에 복사/붙여넣기시 날짜가 아닌 어떤 텍스트던 붙여넣어질 수 있습니다.
저장시 해당 필드에 대한 추가 검증 코드가 필요할 수 있으므로 text로 사용시 주의하세요.
field.dataType = 'datetime' 사용을 추천 드립니다. 기본 편집기의 날짜 편집기 참고
var fields = [
{
"fieldName": "dateTime1",
"dataType": "text"
},
{
"fieldName": "dateTime2",
"dataType": "text"
}
];
var columns = [
{
"name": "dateTime1",
"fieldName": "dateTime1",
"width": "130",
"header": {
"text": "yyyy-MM-dd의 데이터"
},
"editor": {
"type": "date",
"datetimeFormat": "yyyy-MM-dd",
"textReadOnly": true,
"mask": {
"editMask": "9999-99-99",
"includedFormat": true
}
}
},
{
"name": "dateTime2",
"fieldName": "dateTime2",
"width": "130",
"header": {
"text": "yyyyMMdd의 데이터"
},
"editor": {
"type": "date",
"datetimeFormat": "yyyyMMdd",
"textReadOnly": true,
"mask": {
"editMask": "9999-99-99"
}
},
"textFormat": "([0-9]{4})([0-9]{2})([0-9]{2})$;$1-$2-$3",
}
];