- El formulario:
Código:
- El código JS:<form method="post" id="userForm" enctype="multipart/form-data"> curso <select multiple="multiple" name="form[field1][]" id="field1" > <option value="100">Curso Básico</option> <option value="200">Curso Intensivo</option> </select> alojamiento <select multiple="multiple" name="form[field2][]" id="field2" > <option value="100">compartido</option> <option value="200">individual</option> <option value="0">sin alojamiento</option> </select> semanas <input type="text" value="" size="20" name="form[field3]" id="field3" /> <input type="button" value="Calculate" name="form[Calculate]" id="Calculate" onclick="calculateText();" /> <input type="text" value="" size="20" name="form[Total]" id="Total" readonly="readonly"/> </form>
Código:
Hasta aquí todo bien, y funciona perfectamente. El problema viene ahora que tengo que añadir un campo más para la fecha, ya que dependiendo en que fecha se vaya a escoger hay que aplicar tarifa de baja, media o alta temporada tanto al curso como al alojamiento. Y luego volver al multiplicarlo por el número de semanas. <script language="javascript"> function calculateText(){ var op1=document.getElementById('field1'); var op2=document.getElementById('field2'); var op3=document.getElementById('field3'); var result=document.getElementById('Total'); if(op1.value=="" || op1.value!=parseFloat(op1.value)) op1.value=0; if(op2.value=="" || op2.value!=parseFloat(op2.value)) op2.value=0; if(op3.value=="" || op3.value!=parseFloat(op3.value)) op3.value=0; result.value=0; result.value=parseInt(result.value); result.value=(parseInt(result.value)+parseInt(op1.value)+parseInt(op2.value))*parseInt(op3.value);} </script>
Más o menos tengo claro lo que hay que hacer;
- primero guardar el tipo de curso como "basico" o "intensivo" (y no como un número como hasta ahora)
- luego guardar, también el tipo de alojamiento, "compartido" "individual" o "sin alojamiento"
- luego, en función de la fecha (Enero-Junio=TempBaja, Junio-Sep=TempMedia, Sep-Dic=TempAlta) asignarle un valor al curso y al alojamiento.
- sumar ambos valores y multiplicarlos por el número de semanas
- mostrar el valor
Yo no tengo unos conocimientos muy extensos y la verdad es que ando perdido porque no se muy bien donde buscar información para este caso. Supongo que habrá primero que almacenar todas las cantidades en dos arrays, tanto para curso como para alojamiento, donde luego las pueda recoger la fecha en función de la elegida.. o igual no y me estoy flipando!!!
Alguien me puede echar un cable???
Muchas gracias como siempre, espero haberme explicado bien!