Ho tre pulsanti, premendo ciascuno dei tre devo caricare un testo diverso da file esterni.
La prima volta che entro nel movieclip che contiene i tre pulsanti "forzo" la funzione legata ad uno dei tre in modo che mi carichi comunque il primo testo.
Ecco cosa ho scritto:


function sceltaStoria (event:MouseEvent):void
{

var pathFile:String = "comitato-storia.txt"

try {
loader.load(requestUrl);
} catch (error:Error) {
trace("function sceltaStoria - File Not Found!!!");
trace(requestUrl);
}

};

function sceltaComitato (event:MouseEvent):void
{

var pathFile:String = "comitato-comitato.txt"


try {
loader.load(requestUrl);
} catch (error:Error) {
trace(requestUrl);
trace("function sceltaComitato - File Not Found!!!");
}

};

function sceltaAttività (event:MouseEvent):void
{
var pathFile:String = "comitato-attività.txt"

try {
trace ("sto per fare il loader");
trace (requestUrl);
loader.load(requestUrl);
} catch (error:Error) {
trace(requestUrl);
trace("function sceltaAttività - File Not Found!!!");
}

};

pulComComitato.addEventListener(MouseEvent.CLICK, sceltaComitato);
pulComAttività.addEventListener(MouseEvent.CLICK, sceltaAttività);
pulComStoria.addEventListener(MouseEvent.CLICK, sceltaStoria);

var pathFile:String = "comitato-storia.txt";
var loader:URLLoader = new URLLoader();
var requestUrl:URLRequest = new URLRequest(pathFile);

loader.addEventListener(Event.COMPLETE, completeHandler);

function completeHandler(event:Event):void {
trace ("sono in completeHandler");
var loader:URLLoader = URLLoader(event.target);
var dateTxt:String = loader.data;
txtComitato.htmlText = dateTxt;
trace (dateTxt);
}

sceltaStoria(null);

stop();

Il primo caricamento va bene, il testo viene caricato dall'esterno e visualizzato correttamente.
Se poi però faccio click su un altro pulsante il testo non cambia.
Il problema è che da "dentro" le funzioni imposto la variabile "path" correttamente ma quando scatta la funzione completeHandler (chiamata dal listener) che è definita esternamente, va a prendere il valore della variabile "path" vecchio perchè è fuori dalla funzione.
Come risolvere?
Grazie mille