2013-12-09 36 views
0

您好我有一個高級的數據網格在flex和有時填充此圖形的查詢將返回一個空的單元格值。當發生這種情況時,Datagrid顯示「NaN」。無論如何,如果我的查詢不返回任何東西Datagrid單元格保持空白。Datagrid返回一個空值,我可以替換它嗎?

感謝 MXML: '

    <mx:AdvancedDataGridColumn headerText="{Mlc.curr.get('address')}" dataField="datafield2" width="{Math.max(180,getStyle('fontSize')))}" /> 
        <mx:AdvancedDataGridColumn headerText="{Mlc.curr.get('Name')}" dataField="datafield1" width="{Math.max(180,getStyle('fontSize')))}" /> 


       </components:columns> 
       </components:RowColorDataGrid> 

'

爲:

accountViewGridCanv.numRows = 1000; 
dgGridCanv.addParameter(Constants.parameter,""); 
dgGridCanv.itemID = displayItems.indexOf(dgGrid); 

基本查詢運行電子表格和結果都顯示在一個DataGrid,但如果電子表格中的單元格爲空然後數據網格顯示「NaN」

感謝 再次

+0

請分享一些代碼檢查NaN。這聽起來像你的DataGrid的dataProvider中有一個項目;但是我們需要知道如何處理服務中的結果以及如何設置dataProvider來確定。 – JeffryHouser

+0

嘗試管理列的標籤功能。 – matilu

+0

謝謝我使用的代碼能夠從數據網格中刪除NaN,但它刪除該列中的每一行。例如第1行和第2行是空的,但是3包含有效的數字。在這種情況下,所有3行返回0.是否有可能只適用於行與NaN – kris

回答

0

這發生在Web服務對於一些數據類型返回null。 Flex將其轉換爲NaN(不是數字)。使用labelfunction檢查列中的值是否爲NaN。如果是,則返回相應的值display.eg-

<mx:AdvancedDataGridColumn headerText="Quantity" labelFunction="getTotalQty"/> 

現在在getTotalQty功能

private function getTotalQty(inData:Object, inCol:AdvancedDataGridColumn):Number 
    { 
     return (isNaN(inData.qty)?0:inData.qty); 
    } 
+0

如果你仔細看看我的getTotalQty函數,它返回數據的實際值,如果它不是NaN。因此,除非您沒有正確實施該功能,或者該行中的實際數據已經爲0,否則不應該在所有行中都爲0。 –

+0

同樣,將Object的inData參數的數據類型替換爲數據提供者中對象的數據類型。希望這有助於.. –

+0

嗨,這definetely不起作用。該高級數據網格中的項目作爲對象,但是對於該列中的所有行,這將返回0,而不管數據提供者中已返回什麼。它已經完全按照它在這裏執行 – kris

相關問題