у меня похожая проблема
загружаю данные из XML по разным мувиклипам и добавляю на сцену. по нажатию на кнопку нужно удалить их все.пробовал по вашему методу и удаляется только последний элемент. я новичок в работе с XML, так что не судите строго.)

Код AS1/AS2:
var xmlPath:String = "news.xml";
var settingsXML:XML;
var loader = new URLLoader();
loader.load(new URLRequest(xmlPath));
loader.addEventListener(Event.COMPLETE, xmlLoaded);
function xmlLoaded(e:Event):void
{
if ((e.target as URLLoader) != null )
{
settingsXML = new XML(loader.data);
settingsXML.ignoreWhitespace = true;
createMenu();
}
}
function createMenu():void
{
var newsTitle:NewsTitle;
var newsDate:NewsDate;
var btn:Button;
var i:uint = 0;
for each (var page:XML in settingsXML.pages.page)
{
var container:Sprite = new Sprite();
addChild(container);
newsTitle = new NewsTitle();
newsDate = new NewsDate();
btn = new Button();
newsTitle.newsLabel.text = page.title;
newsTitle.newsLabel.autoSize = TextFieldAutoSize.LEFT;
newsDate.newsDateLabel.text = page.date;
newsDate.newsDateLabel.autoSize = TextFieldAutoSize.LEFT;
newsTitle.x = 150;
newsTitle.y = 50 + i * 40;
newsDate.x = 50;
newsDate.y = 50 + i * 40;
btn.x = 150;
btn.y = 50 + i * 40;
btn.width = newsTitle.width;
btn.height = newsTitle.height;
btn.alpha = 0;
btn.buttonMode = true;
container.addChild(newsTitle);
container.addChild(newsDate);
container.addChild(btn);
trace(container.numChildren);
btn.addEventListener(MouseEvent.CLICK, btn_click);
function btn_click(e:MouseEvent)
{
while (container.numChildren > 0)
{
container.removeChildAt(0);
}
trace(container.numChildren)
}
i++;
}
}
трэйс показывает, что у меня 3 экземпляра, но в реальности из ХМЛ их создается 9, по три разных классов и удалить мне нужно их все. я явно что-то недопонимаю