Pergunta

A seguir faz parte do meu código interagindo com grade de dados ...!

Esta lista os filhos do nó particular, se eu clicar sobre ele depois de atualizar o datagrid ..

Mas se eu clicar em um espaço vazio do datagrid eu recebo um erro dizendo

"ReferenceError: Erro # 1069:. Dados do imóvel não foi encontrado na mx.controls.listClasses.ListBaseContentHolder e não há valor padrão"

Como evitar isso?

if (event.target.data.children! = Null) { resultSet.removeAll (); var tempChildObj: ArrayCollection; tempChildObj = event.target.data.children como ArrayCollection; var childLength: int; childLength = tempChildObj.length;

        for(var i:int =0;i<childLength;i++)
        {

            resultSet.addItem(tempChildObj.getItemAt(i));

        }

        resultSet.addItem(tempChildObj);
    }


}
Foi útil?

Solução

O que o erro está lhe dizendo é que a propriedade target do evento não tem uma propriedade chamada data no seu caso de erro. Isso faz sentido, já que você está clicando em uma linha em branco -. Uma linha em branco não contêm quaisquer dados

O que você vai querer fazer primeiro é verificar se target do evento contém uma propriedade data antes de começar a acessar a propriedade child de data. Qualquer um dos seguintes testes deve funcionar:

if( event.target.hasOwnProperty( "data" ) ) {
    // rest of your code here
}

ou

if( event.target.data ) {
    // rest of your code here
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top