在flex中的DataGrid中用null替换NaN值

时间:2013-12-31 15:39:03

标签: actionscript-3 flex nan advanceddatagrid labelfunction

<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还是其中都有数字。

datagrid传递了几个对象,对象0有NaN,因此返回一个空框,对象1的值为70,仍然返回一个空框。

1 个答案:

答案 0 :(得分:0)

inData是一个通用对象;这可能意味着数量也是无类型的;因为它不是对象的默认属性。这就是它未通过isNaN测试的原因。尝试将inData强制转换为自定义对象或将inData.qty转换为Number。

这样的事情:

private function getTotalQty(inData:Object, inCol:AdvancedDataGridColumn)
{
            var qtyAsNumber : Number = Number(inData.qty);
            return (isNaN(qtyAsNumber)?"":qtyAsNumber.toString());
}