lo primero que tendrias que hacer es
- crear tu objeto que recibira los datos del xml
- creas un funcion que debe ejecutarse cuando se carguen los datos
- cargar el xml
Puedes cargar los datos de 'productos' desde cualquier lugar y en cualquier momento... porque sabes que cuando se carguen se ejecutará la funcion '
crear'
En el cÓdigo, por ejemp tenemos al posibilidad de cargar los datos desde dos botones distintos enviando variables distintas y esperar resultados distintos...
Como te digo se puede hacer la llamada al método load en cualquier contexto
haaa... y otra cosa a tener en cuenta es... es que cada vez que ejecutemos la funcion 'crear', si lo hacemos con el mismo
identificador siempre, entonces los reemplazará en la medida de cuantos hayas tenido y cuantos tienes ahora,,, me explico...
Si al cargar con el 'boton1' obtenemos un XML con 10 nodos hijos entonces crearemos (por lo general) 10 elementos... y si para cuando carguemos con el 'boton2' obtenemos solo 7 nodos hijos entonces los siete primeros serán reemplazados y los tres restantes seran de la anterior llamada
para evitar esto... lo que tienes que hacer antes de volver a crear los elementos... tienes que eliminar todos los anteriores posibles que se pudieron haber creado...
si lo que queremos no es que se reemplacen sino que se agreguen
entonces podemos tener un contador de elementos de hijos nodos
ops creo que estoy complicando un tanto el asunto...
:P
Código PHP:
//1. creamos el objeto XML
productos = new XML();
productos.ignoreWhite = true;
productos.onLoad = function(succ) {
if (succ) {
crear(this);
}
};
//2. definimos la funcion 'crear', que se ejecutará cada vez que se carga exitosamente los datos de 'productos'
function crear(rexml:XML){
var productos_array:Array = rexml.firstChild.childNodes;
//... etc etc
};
//3.
//en algun boton
boton1.onRelease = function(){
productos.load('pruexml.php?prima='+valor1+'&tiempo='+valor2);
}
//en algun otro boton
boton2.onRelease = function(){
productos.load('pruexml.php?prima='+valor3+'&tiempo='+valor4);
}