Puede haber dos tipos de curso (básico o intensivo) y dos tipos de alojamiento (individual o compartido). A su vez, dependiendo si es temporada alta, media o baja, los precios pueden variar. Es decir yo puedo elegir curso básico y alojamiento individual, y si selecciono temporada baja aparece un precio, si selecciono temporada media otro precio distinto y si selecciono temporada alta otro distinto. Y así con todas las posibilidades que hay en los select
He montado un javascript a partir de documentación que he visto por la web pero me he quedado un poco atascado y necesitaría un poco de ayuda...
No sé si recupero bien los valores de los selects y me lio un poco con el tema de las comillas ("), que no se si tienen que ser simples o dobles.
También me gustaría saber como paso el resultado de la variable precioTotal al campo de texto con name Total..
Éste es el código, muchas gracias de antemano:
El formulario html
Código HTML:
<form method="post" name="formReserva" id="userForm" enctype="multipart/form-data"> curso <select name="curso" id="curso"> <option value="basico">Curso Básico</option> <option value="intensivo">Curso Intensivo</option> </select> alojamiento <select name="alojamiento" id="alojamiento"> <option value="compartido">compartido</option> <option value="individual">individual</option> <option value="sinalojamiento">sin alojamiento</option> </select> semanas <input type="text" value="" size="20" name="semanas" id="field3" /> temporada <select name="temporada" id="temporada"> <option value="baja">Enero-Junio</option> <option value="media">Junio-Octubre</option> <option value="alta">Octubre-Diciembre</option> </select> <input type="button" value="Calculate" name="form[Calculate]" id="Calculate" onclick="calcula();" /> <input type="text" value="" size="20" name="Total" id="Total" readonly="readonly"/> </form>
Código Javascript:
Ver original
<script language="javascript"> function calcula(){ var preciosCurso = 0; var preciosAlojamiento = 0; if(formReserva.curso.value == "basico"){ var tipoCurso = "cursoBasico"; }else{ var tipoCurso = "cursoIntensivo"; } if(tipoCurso = "cursoBasico"){ var preciosCurso = [10,20,30]; } else { var preciosCurso = [40,50,60]; } if(formReserva.alojamiento.value == "compartido"){ var tipoAlojamiento = "alojamientoCompartido"; }else if(formularioI.field2.value == "individual"){ var tipoAlojamiento = "alojamientoIndividual"; } if(tipoAlojamiento = "alojamientoCompartido"){ var preciosAlojamiento = [10,20,30]; } else if(tipoAlojamiento = "alojamientoIndividual") { var preciosAlojamiento = [40,50,60]; }else{ var preciosAlojamiento = 0; } var semanas=document.getElementById('semanas'); if(formReserva.temporada.value == "baja"){ var precioCurso = preciosCurso[0]; var precioAlojamiento = preciosAlojamiento[0]; }else if(formReserva.temporada.value == "media"){ var precioCurso = preciosCurso[1]; var precioAlojamiento = preciosAlojamiento[1]; }else{ var precioCurso = preciosCurso[2]; var precioAlojamiento = preciosAlojamiento[2]; } var precioTotal = (precioCurso+precioAlojamiento)*semanas; } </script>
Muchas a gracias todos