Apache flex FlexDataGrid查询
下面是我与数据网格交互的部分代码 如果在刷新datagrid后单击特定节点,则会列出该节点的子节点 但如果我点击datagrid的一个空白区域,我会得到一个错误消息 “ReferenceError:错误#1069:在mx.controls.listClasses.ListBaseContentHolder上找不到属性数据,并且没有默认值。” 如何避免这种情况 if(event.target.data.children!=null) { resultSet.removeAll(); var tempChildObj:ArrayCollection; tempChildObj=event.target.data.children作为ArrayCollection; var-childLength:int; childLength=临时ChildObj.lengthApache flex FlexDataGrid查询,apache-flex,datagrid,events,click,Apache Flex,Datagrid,Events,Click,下面是我与数据网格交互的部分代码 如果在刷新datagrid后单击特定节点,则会列出该节点的子节点 但如果我点击datagrid的一个空白区域,我会得到一个错误消息 “ReferenceError:错误#1069:在mx.controls.listClasses.ListBaseContentHolder上找不到属性数据,并且没有默认值。” 如何避免这种情况 if(event.target.data.children!=null) { resultSet.removeAll(); var tem
for(var i:int =0;i<childLength;i++)
{
resultSet.addItem(tempChildObj.getItemAt(i));
}
resultSet.addItem(tempChildObj);
}
}
for(var i:int=0;i错误告诉您的是,在您的错误案例中,事件的target
属性没有名为data
的属性。这是有意义的,因为您单击的是空行-空行不会包含任何数据
您首先要做的是,在开始访问数据
的子属性之前,检查事件的目标
是否包含数据
属性。以下任一测试都应该有效:
if( event.target.hasOwnProperty( "data" ) ) {
// rest of your code here
}
或
if( event.target.data ) {
// rest of your code here
}