Eh bien vous avez deux questions. Votre première construction d'une variable qui n'existe que dans la fonction. Changement. Raison de problèmes de portée de votre allons avoir du mal à y accéder en dehors de la fonction.
Pour résoudre cela, vous devez créer une variable en dehors de la fonction, puis définissez sa valeur sur les incendies lorsque le changement. Donc:
// create holder varialbes
var selItem = "";
var selLabel = "";
myComboBoxListener = new Object();
myComboBoxListener.change = function(eventObj) {
var eventSource = eventObj.target;
var theSelectedItem = eventSource.selectedItem;
var theSelectedItemLabel = theSelectedItem.data;
// attach your vars to the holder vars
selItem = theSelectedItem;
selLabel = theSelectedLabel;
// trace the variables here to show that they've changed
trace("item = "+selItem+" and label= "+selLabel);
};
myComboBox.addEventListener("change", myComboBoxListener);
// If you trace the vars here they'll be blank because the event hasn't fired yet.
trace("item = "+selItem+" and label= "+selLabel);
- // create holder varialbes
- var selItem = "";
- var selLabel = "";
-
- myComboBoxListener = new Object();
- myComboBoxListener.change = function(eventObj) {
- var eventSource = eventObj.target;
- var theSelectedItem = eventSource.selectedItem;
- var theSelectedItemLabel = theSelectedItem.data;
- // attach your vars to the holder vars
- selItem = theSelectedItem;
- selLabel = theSelectedLabel;
-
- // trace the variables here to show that they've changed
- trace("item = "+selItem+" and label= "+selLabel);
- };
- myComboBox.addEventListener("change", myComboBoxListener);
-
- // If you trace the vars here they'll be blank because the event hasn't fired yet.
- trace("item = "+selItem+" and label= "+selLabel);
-
-
Maintenant, en fonction de ce que vous avez à faire avec les variables en PHP vous pouvez faire du droit d'appel sur la fonction à l'intérieur du changement, mais qu'il ya probablement plus facile d'avoir une fonction distincte pour gérer tous ce que vous appelez l'intérieur de l'auditeur.
// create holder varialbes
var selItem = "";
var selLabel = "";
myComboBoxListener = new Object();
myComboBoxListener.change = function(eventObj) {
var eventSource = eventObj.target;
var theSelectedItem = eventSource.selectedItem;
var theSelectedItemLabel = theSelectedItem.data;
// attach your vars to the holder vars
selItem = theSelectedItem;
selLabel = theSelectedLabel;
// function to run
cbchanged();
};
myComboBox.addEventListener("change", myComboBoxListener);
// function to run on change
function cbchanged(){
trace("cb changed. new item = "+selItem+" and new label= "+selLabel);
}
- // create holder varialbes
- var selItem = "";
- var selLabel = "";
-
- myComboBoxListener = new Object();
- myComboBoxListener.change = function(eventObj) {
- var eventSource = eventObj.target;
- var theSelectedItem = eventSource.selectedItem;
- var theSelectedItemLabel = theSelectedItem.data;
- // attach your vars to the holder vars
- selItem = theSelectedItem;
- selLabel = theSelectedLabel;
-
- // function to run
- cbchanged();
-
- };
- myComboBox.addEventListener("change", myComboBoxListener);
-
- // function to run on change
- function cbchanged(){
- trace("cb changed. new item = "+selItem+" and new label= "+selLabel);
- }
-
Évidemment, il ya beaucoup de façons de simplifier ce code, mais son bon de savoir whats going on.
Deuxièmement, il ya deux manières de transmettre ces données à partir de PHP / Javascript, etc Jetez un oeil à la fois
sendAndLoadVars et
ExternalInterface pour trouver le meilleur pour votre configuration.
If at first you don't succeed F1... If that doesn't work try Google!
//// Designer, Developer & Teacher - Interactive, Motion and 3D \\\\
Portfolio at WhenImNotSleeping.com