Замена значения NaN на NULL в DataGrid в flex
<mx:AdvancedDataGridColumn headerText="{Mlc.curr.get('column 1')}" dataField="datafield1" labelFunction="getTotalQty"/>
private function getTotalQty(inData:Object, inCol:AdvancedDataGridColumn):String
{
return (isNaN(inData.qty)?"":inData.qty);
}
в настоящее время это возвращает пустую ячейку сетки данных для каждой ячейки. независимо от того, является ли ячейка NaN или имеет номер в ней.
сетке данных передается несколько объектов, объект 0 имеет NaN и, таким образом, возвращает нулевое поле, объект 1 имеет значение 70 и по-прежнему возвращает нулевое поле.
1 ответ
inData - универсальный объект; что, вероятно, означает, что qty также нетипизирован; так как это не свойство по умолчанию для объекта. Вот почему он не проходит тест isNaN. Попробуйте привести inData к вашему пользовательскому объекту или inData.qty к Number.
Что-то вроде этого:
private function getTotalQty(inData:Object, inCol:AdvancedDataGridColumn)
{
var qtyAsNumber : Number = Number(inData.qty);
return (isNaN(qtyAsNumber)?"":qtyAsNumber.toString());
}