Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/01/2008, 07:44
ladiesman217
 
Fecha de Ingreso: enero-2008
Mensajes: 1
Antigüedad: 16 años, 3 meses
Puntos: 0
Exclamación Ayuda urgente con un formulario

Antes que nada, decir que soy novato novatísimo con ActionScript. Probablemente he cometido algunos fallos evidentes y ni me doy cuenta xD, pero bueno, voy a exponer lo que tengo que exponer.

Veamos... tengo un formulario que requiere programar algunas cosillas. Tengo el código que creo que tiene que funcionar... pero no lo hace. He probado ya mil alternativas, pero nada funciona.

Pero bueno, primero una captura del formulario (sin maquillar ni nada, eso siempre lo hago después de programar):



El DateField de la izquierda se llama "Entrada". El de la derecha, "Salida". El NumericStepper es "NHabitaciones", y el ComboBox, "THabitación". El texto dinámico que hay a la derecha del texto estático Total, es "Total" (xD).

Lo que quiero hacer es que, dependiendo de un rango de tiempo en concreto (tres temporadas: baja, media y alta), se creen dentro del ComboBox unos labels (los diferentes tipos de habitación) con diferentes tipos de data (que serían los precios para esos tipos).

Por ejemplo si escojo el 20 de noviembre, que entra dentro de la temporada baja, y luego elijo dos habitaciones individuales, el precio, que sería 120.20, tendría que aparecer en Total.

Os pego aquí el código. Yo me lo he repasado mil veces y ya tengo la cabeza como un bombo. ¡Orientad a este pobre padawan por piedad!

Acciones de fotograma:
Código HTML:
var Total:Number = 0;
switch (precios) {
case ((Entrada.selectedDate>=[new Date(Entrada.displayedYear,9,16)])&&(Entrada.selectedDate<=[new Date(Entrada.displayedYear,2,15)])) :
    THabitación.addItem({label:""});
    THabitación.addItem({data:60.10, label:"Individual"});
    THabitación.addItem({data:72.12, label:"Doble"});
    THabitación.addItem({data:84.14, label:"Triple"});
    THabitación.addItem({data:102.17, label:"Cuádruple"});
    break;
case ((Entrada.selectedDate>=[new Date(Entrada.displayedYear,2,16)])&&(Entrada.selectedDate<=[new Date(Entrada.displayedYear,5,15)])) :
    THabitación.addItem({label:""});
    THabitación.addItem({data:84.14, label:"Individual"});
    THabitación.addItem({data:99.17, label:"Doble"});
    THabitación.addItem({data:111.19, label:"Triple"});
    THabitación.addItem({data:132.22, label:"Cuádruple"});
    break;
case ((Entrada.selectedDate>=[new Date(Entrada.displayedYear,5,16)])&&(Entrada.selectedDate<=[new Date(Entrada.displayedYear,9,15)])) :
    THabitación.addItem({label:""});
    THabitación.addItem({data:96.16, label:"Individual"});
    THabitación.addItem({data:108.18, label:"Doble"});
    THabitación.addItem({data:126.21, label:"Triple"});
    THabitación.addItem({data:144.24, label:"Cuádruple"});
    break;

var detectorcmb:Object = new Object();
detectorcmb.change = function() {
    Total = THabitación.data[THabitación.getSelectedIndex()];
    NHabitaciones.value = "1";
};
THabitación.addEventListener("change", detectorcmb);

function multiplicar():Void {
    Total = NHabitaciones.value*THabitación.value;
Acciones NumericStepper:
Código HTML:
on (change) {
    _root.multiplicar();
}
Acciones ComboBox:
Código HTML:
on (change) {
    _root.detectorcmb();
}