Frage

Im Folgenden Teil meines Codes ist mit Datenraster interagieren ...!

Hier werden die Kinder des speziellen Knotens, wenn ich darauf klicken, nachdem das Datagrid erfrischend ..

Aber wenn ich auf einem leeren Bereich des Datagrid klicken bekomme ich eine Fehlermeldung,

"Referenceerror: Error # 1069:. Objektdaten nicht auf mx.controls.listClasses.ListBaseContentHolder gefunden und es gibt keinen Standardwert"

Wie das vermeiden?

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

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

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

        }

        resultSet.addItem(tempChildObj);
    }


}
War es hilfreich?

Lösung

Was ist der Fehler, den Sie sagt, dass die target Unterkunft Ereignis nicht eine Eigenschaft namens data im Fehlerfall hat. Dies macht Sinn, da Sie in einer leeren Zeile sind klicken -. Eine leere Zeile enthält keine Daten

Was Sie wollen, zuerst zu tun ist, prüfen Sie, ob der Veranstaltung target eine data Eigenschaft enthält, bevor Sie die child Eigenschaft data starten zugreifen. Entweder eine der folgenden Tests funktionieren soll:

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

oder

if( event.target.data ) {
    // rest of your code here
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top