【发布时间】:2010-10-15 18:25:54
【问题描述】:
如何从数据绑定数组中删除项目?我的代码如下。
for(var i = 0; i < listBox.selectedIndices.length; i++) {
var toRemove = listFiles.selectedIndices[i];
dataArray.splice(toRemove, 1);
}
提前致谢!
编辑这是我的 swf。添加照片有效,除非您删除项目。 http://www.3rdshooter.com/Content/Flash/PhotoUploader.html
- 添加 3 张不同的照片。
- 删除第二张照片。
- 添加其他照片。
- SWF 将第二张照片添加到末尾。
关于为什么会这样做的任何想法?
编辑 2这是我的代码
private function OnSelectFileRefList(e:Event):void
{
Alert.show('addstart:' + arrayQueue.length);
for each (var f:FileReference in fileRefList.fileList)
{
var lid:ListItemData = new ListItemData();
lid.fileRef = f;
arrayQueue[arrayQueue.length]=lid;
}
Alert.show('addcomplete:' + arrayQueue.length);
listFiles.executeBindings();
Alert.show(ListItemData(arrayQueue[arrayQueue.length-1]).fileRef.name);
PushStatus('Added ' + fileRefList.fileList.length.toString() + ' photo(s) to queue!');
fileRefList.fileList.length = 0;
buttonUpload.enabled = (arrayQueue.length > 0);
}
private function OnButtonRemoveClicked(e:Event):void
{
for(var i:Number = 0; i < listFiles.selectedIndices.length; i++) {
var toRemove:Number = listFiles.selectedIndices[i];
//Alert.show(toRemove.toString());
arrayQueue.splice(toRemove, 1);
}
listFiles.executeBindings();
Alert.show('removecomplete:' + arrayQueue.length);
PushStatus('Removed photos from queue.');
buttonRemove.enabled = (listFiles.selectedItems.length > 0);
buttonUpload.enabled = (arrayQueue.length > 0);
}
【问题讨论】:
-
您使用的代码有什么问题? “拼接”不适合你吗?
-
好像没有。当我向列表框中添加另一个项目时,我得到了前一个项目。
标签: javascript arrays actionscript