0
<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 があるため、null ボックスが返されます。オブジェクト 1 には値 70 があり、それでも null ボックスが返されます。

4

1 に答える 1

0

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());
}
于 2013-12-31T19:47:11.777 に答える