Замена значения 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());
}
Другие вопросы по тегам