exporter 플러그인과 함께 Dojo EnhancedGrid를 사용하고 있습니다. 그리드에는 표시된 필드와 편집 가능한 필드가 많이 있습니다. editable에는 저장소에 실제 값 대신 "displayValue"를 표시하기 위해 하나의 DateTextBox와 Formatter가 첨부 된 두 개의 FilteringSelects가 있습니다. 예를 들어 여기 내 공급 업체 필드 : 나는 CSV 문자열을 내보낼 때, 나는 문자열의 SupplierName 대신 공급 업체 ID를 얻을 수DOJO CSVWriter가 표시 데이터를 가져 오지 않습니다.
{field: 'SupplierId', name: 'Supplier', editable: editable, widgetClass: FilteringSelect, width: 6,
widgetProps: {
store: comboSupplierStore,
searchAttr: 'name',
labelAttr: 'name'
},
formatter: function(data, rowIndex) { /*[kgf]*/
/*alert("data "+data)*/
var genId = 'supplier_' + rowIndex;
var store = this.widgetProps.store;
var attr = "name";
setTimeout(function() {
store.fetchItemByIdentity({
identity: data,
onItem: dojo.partial(displayValue, genId, store, attr)
});
}, 50);
/*for now return a span with a predetermined id for us to populate.*/
return '<span id="' + genId + '"></span>';
}
}, /*Next field, and so on...*/
(내가 도장 포럼에 [KGF]에서 포맷을 복사).
이grid.exportGrid('csv', function(str){
/*I do something with the string */
}
누군가가 수출이 포매터를 "무시"왜 나를 확인하는 데 도움이 수 없습니다 : 나는 내가 CSV 문자열로 내보낼 onclick 이벤트를 정의하는 버튼이 ?
아니요. 'supplier_'+ rowIndex는 공급 업체의 실제 ID가 아닙니다. rowIndex는 EnhancedGrid를 채우는 데 사용 된 저장소의 데이터 행 인덱스입니다. 각 행에는 다른 공급 업체가 포함될 수 있으며 동일한 SupplierId를 포함하는 여러 행이있을 수 있습니다. 이 그리드는 구매 수요를 나타냅니다. –