1
dgrid/Grid를 사용하여 테이블 구조를 정의하고 있습니다. 표 셀에 여러 줄 텍스트을 표시하고 싶습니다. 셀 편집기를 TextArea로 만드는 방법을 알아 냈습니다. 그러나 렌더러에서 여러 줄 텍스트를 표시하는 방법을 알지 못합니다. 어떻게해야합니까?이 내가 가진 무엇 :dojo/dgrid 용 TextArea 셀 렌더러
editor({label: "First Name", field: "first", sortable: false, editor: getCellEditor, editOn: "dblclick", dismissOnEnter: false})
"getCellEditor"는 는 Dijit/양식/텍스트 영역를 반환하는 도우미 메서드입니다. 셀을 두 번 클릭하면 여러 줄의 텍스트 영역이 만들어집니다. 그러나 셀 편집 및 종료를 완료하면 셀 텍스트가 한 줄로 되돌아갑니다. 여기에 전체 그리드의 정의는 다음과 같습니다
function getCellEditor() {
return new TextArea();
}
// Create a new constructor by mixing in the components
var CustomGrid = declare([ Grid, Keyboard, Selection, ColumnSet, ColumnResizer, editor ]);
var grid = new CustomGrid({
columnSets: [
[
[
editor({label: "First Name", field: "first", sortable: false, editor: getCellEditor, editOn: "dblclick", dismissOnEnter: false})
]
],
[
[
editor({ label: "Last Name", field: "last", sortable: false, editor: getCellEditor, editOn: "dblclick", dismissOnEnter: false}),
editor({ label: "Age", field: "age", sortable: false, editor: getCellEditor, editOn: "dblclick", dismissOnEnter: false})
]
]
],
selectionMode: "single", // for Selection; only select a single row at a time
cellNavigation: true // for Keyboard; allow only row-level keyboard navigation
}, "grid");
이 너무 누락/부적절한 정보를 용서하십시오, 내 첫 번째 자바 스크립트 질문입니다. 이 질문에 대한 답변을 드릴 때 다른 정보가 필요하면 알려주십시오.
아니요. 도움이되지 않습니다. 네가 내 질문을 이해했다고 생각하지 않는다. 이미 TextArea를 편집기로 사용하고 있습니다 (행의 수가 중요하지 않음). 필요한 것은 셀 * 렌더러로서 TextArea입니다. 즉, 셀이 편집 모드가 아닌 경우 여러 줄에 걸쳐 표시하려면 셀 텍스트가 필요합니다. – eternaln00b