我正在比较两个数组集合假设collection1和collection2和收集2我有复选框,我在做什么是点击修改按钮,我感到比较这些后2个数组集合我想是哪些元素匹配相应的复选框将自动选择。如果(User360DegreePodCreationView.user360PodView.MyArray并[a] == User360DegreePodCreation如何比较柔性×2点阵列集合时,它匹配复选框被选中
enter code here
for(var a:String in User360DegreePodCreationView.user360PodView.MyArray)
{
//loop though the second collection
for(var b:String in User360DegreePodCreation.user360PodCreation.fieldList.dataProvider)`
` { //比较收集 .user360PodCreation.fieldList.dataProvider [b] .columnName) {
var chkBox:CheckBox =new CheckBox;
chkBox = User360DegreePodCreation.user360PodCreation.fieldList.dataProvider[b].columnName as CheckBox;
chkBox.selected=true;
MXML文件
<s:List id="fieldList"
width="100%"
height="170"
enabled="{isEnabled}"
dataProvider="{model.profileTableColumns}"
click="fieldList_clickHandler(event)">
<s:itemRenderer>
<fx:Component id="itemRender">
<s:MXItemRenderer>
<fx:Script>
<![CDATA[
]]>
</fx:Script>
<s:CheckBox left="5"
label="{data.columnName}"
id="chkColumn"
/>
</s:MXItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:List>
按钮的点击我感到比较数据网格的一个阵列收集和列表中的一个ArrayCollection的field..`
private function modifyBtn_clickHandler(event:MouseEvent):void
{
User360DegreePodCreation.user360PodCreation.isEnabled=true;
User360DegreePodCreation.user360PodCreation.isEditable=true;
User360DegreePodCreation.user360PodCreation.displayUpdateButton();
User360DegreePodCreation.user360PodCreation.fieldList.visible=true;
User360DegreePodCreation.user360PodCreation.list.visible =false;
var userProfile360TableChangeEvent:UserProfile360DegreeTableChangeEvent=new UserProfile360DegreeTableChangeEvent();
userProfile360TableChangeEvent.data.idnId=User360DegreePodCreation.user360PodCreation.drpTable.selectedItem.idnId;
userProfile360TableChangeEvent.data.dbPath=User360DegreePodCreation.user360PodCreation.drpTable.selectedItem.externalRefDBPath;
userProfile360TableChangeEvent.data.tableName=User360DegreePodCreation.user360PodCreation.drpTable.selectedItem.tableName;
userProfile360TableChangeEvent.successHandler=function():void
{
if (model.profileTableColumns != null && model.profileTableColumns.length != 0)
{
User360DegreePodCreation.user360PodCreation.onModify();
}
}
userProfile360TableChangeEvent.dispatch();
//Loop through the first collection
for(var a:String in User360DegreePodCreationView.user360PodView.MyArray)
{
//loop though the second collection
for(var b:String in User360DegreePodCreation.user360PodCreation.fieldList.dataProvider)
{
//compare collection
if(User360DegreePodCreationView.user360PodView.MyArray[a] == User360DegreePodCreation.user360PodCreation.fieldList.dataProvider[b].columnName)
{
var chkBox:CheckBox =new CheckBox;
chkBox = User360DegreePodCreation.user360PodCreation.fieldList.dataProvider[b].columnName as CheckBox;
//chkBox.selected=true;
//User360DegreePodCreation.user360PodCreation.fieldList.selectedItem
}
}
}
}
here is my datgrid arraycollection
var MyArray:ArrayCollection = new ArrayCollection(); //DATA ARRAY
trace(dgUser360View.selectedItem.podTitle);
for each(var objAux:Object in model.userProfile360DegreeViewDetailsVO.userProfile360Details) //FOR TYPE OBJECT
{
if(objAux.podTitle==dgUser360View.selectedItem.podTitle)
MyArray.addItem(objAux.columnNames) //ADD DATA IN ARRAY
感谢乌拉圭回合回复@克里斯它工作正常的键值对,但我需要什么假设我有一个数组集合,其动态类型例如onle我很喜欢将士myarray的{分析,ID,端口}一定的价值,第二个数组集合 Myaary2 {分析复选框,ID复选框,端口复选框,nuber复选框,地址复选框} 我只想阵列收集的匹配值获得和无与伦比的元素仍将处于未选中我正在用U分享我做了什么,直到日期
var modifiedProfileColumns:ArrayCollection = new ArrayCollection;
/*for(var b:int=0;b<model.profileTableColumns.length;b++)
{
modifiedProfileColumns.addItem({columnName:model.profileTableColumns[b].columnName,selection:"Yes"});
}*/
//for(var a:String in User360DegreePodCreationView.user360PodView.MyArray)
for(var b:int=0;b<model.profileTableColumns.length;b++)
{
//loop though the second collection
for(var a:String in User360DegreePodCreationView.user360PodView.MyArray)
{
//compare collection
if(User360DegreePodCreationView.user360PodView.MyArray[a] == model.profileTableColumns[b].columnName)
{
modifiedProfileColumns.addItem({columnName:model.profileTableColumns[b].columnName,selection:"true"});
break;
//modifiedProfileColumns.setItemAt({columnName:model.profileTableColumns[b].columnName,selection:"true"},b+1);
}
else
{
modifiedProfileColumns.addItem({columnName:model.profileTableColumns[b].columnName,selection:"false"});
}
}
}
fieldList.dataProvider = modifiedProfileColumns;
}
这里是清单codeing
<s:List id="fieldList"
width="100%"
height="170"
enabled="{isEnabled}"
click="fieldList_clickHandler(event)">
<s:itemRenderer>
<fx:Component id="itemRender">
<s:MXItemRenderer>
<fx:Script>
<![CDATA[
]]>
</fx:Script>
<s:CheckBox left="5"
label="{data.columnName}"
selected="{data.selection=='true'}"
id="chkColumn"/>
</s:MXItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:List>
我得到的匹配值的检查,但在第二个系列阵列收集的元素来三次......我想这个问题是循环我不能够找到它。 如果有人可以帮我找出解决方案,我会一直感激......
,你已经把这个代码?在itemrenderer的脚本标签里面? –
你可能想要在这条线上工作,因为它有一个不好的代码气味。 User360DegreePodCreation.user360PodCreation.fieldList.dataProvider并[b] .columnNamE。 –
yaa点击按钮事件我正在比较两个数组集合 – praveen