Listeners unable to listen to other listeners?!

hi

i have a listener problem here. Previously, i have 2 listeners that listens to 2 listboxes for its variable, to display other stuff. It works nicely, but when i add in a third listbox,the whole flash jumbled up and it cannot receive the variable from its intended recipient previously, and always stick to 0


//////////////////////////////////////setup items in top most layer listbox
function setupTopList() {
f_Top.reverse();
for(var item in f_Top){
topList.addItem(f_Top[item]);
}
topList.sortItemsBy("label", "ASC") 
} 
 
//////////////////////////////////////////////// input items in 2nd layer listbox
 
function setupSecList(q) {
fSecList.removeAll();
all = counting.length
SecList._visible = false;
for(p=0; p<all; p++) {
if(f_TopR[q] === fTop[p]) { 
featureList._visible = true;
featureList.addItem(fTitle[p]);
trace("p in setupSecList= " + p) // still ok here
}
}}
 
/////////////////////////////////////////////////////////////input items in thirdList
function setupThirdList(p) {
trace("p in thirdlist = " + p) // p is not working anymore!
thirdList._visible = false;
thirdList.removeAll();
for (j=0; j<total; j++) { 
if (fTitle[p+1]=== thirdTitle[j]) {
thirdList._visible = true;
thirdList.addItem(thirdWorks[j]); 
}
}}} 
 
 
///////////////////////////////////////////////////////////////////////top listener
myTopBoxListener = new Object();
myTopBoxListener.change = function ( eventObj ){
var eventSource = eventObj.target;
var selectedObj = eventSource.selectedItem;
var q = eventSource.selectedIndex;
var selectedObjLabel = selectedObj.label;
setupSecList(q);
}
 
topList.addEventListener ("change", myTopBoxListener);
 
////////////////////////////////listens to secList for command
myListBoxListener = new Object();
myListBoxListener.change = function ( eventObj ){
 
var eventSource = eventObj.target;
var selectedObj = eventSource.selectedItem;
var p = eventSource.selectedIndex;
var selectedObjLabel = selectedObj.label;
clickChange(p);
setupThirdList(p);
trace("p in listbox listener= " + p)
}
 
secList.addEventListener ("change", myListBoxListener);
 
[color=black]function clickChange(p){
 trace("p in clickchange = "+ p)
if (loaded == filesize) { 
picture.loadMovie(image[p-1]); 
desc_txt.text = description[p-1]; 
} 
}[/color]

[color=black]//featureList.setChangeHandler(samplist(p+1)); should i put this line in??[/color]

 

i hope my question is understood. appreciate any help …