0

以下は、データグリッドとやり取りする私のコードの一部です...!

データグリッドを更新した後にクリックすると、特定のノードの子がリストされます..

しかし、データグリッドの空のスペースをクリックすると、次のエラーが表示されます

「ReferenceError: エラー #1069: プロパティ データが mx.controls.listClasses.ListBaseContentHolder で見つかりません。デフォルト値がありません。」

それを避ける方法は?

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

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

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

        }

        resultSet.addItem(tempChildObj);
    }


}
4

1 に答える 1

1

エラーが伝えているのは、イベントのプロパティに、エラー ケースでtarget呼び出されたプロパティがないということです。data空白の行をクリックしているので、これは理にかなっています。空白の行にはデータが含まれていません。

最初に行うことは、 のプロパティへのアクセスを開始する前に、イベントにプロパティtargetが含まれているかどうかを確認することです。次のいずれかのテストが機能するはずです。datachilddata

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

また

if( event.target.data ) {
    // rest of your code here
}
于 2009-07-31T14:49:08.290 に答える