Foros del Web » Programando para Internet » Javascript »

Formulario incompleto

Estas en el tema de Formulario incompleto en el foro de Javascript en Foros del Web. Buenas a tod@s. Tengo "realizado" un formulario ( con su css correspondiente ) en el que quiero que seleccionando una o varias opciones, las vaya ...
  #1 (permalink)  
Antiguo 20/03/2014, 20:07
 
Fecha de Ingreso: septiembre-2011
Ubicación: Gran Canaria
Mensajes: 134
Antigüedad: 12 años, 7 meses
Puntos: 1
Formulario incompleto

Buenas a tod@s.

Tengo "realizado" un formulario ( con su css correspondiente ) en el que quiero que seleccionando una o varias opciones, las vaya sumando y le sume el impuesto correspondiente. Pero ésto último no me sale.

Creo que me falta algo.

El código sería éste:


Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2.     <html xmlns="http://www.w3.org/1999/xhtml">
  3.     <head>
  4.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5.     <title>..: calcular :..</title>
  6.  
  7.           <script type="text/javascript">
  8.  
  9. function calcular(){
  10. var valor_1= document.formulario.s_aleta_delantera_izquierda[document.formulario.s_aleta_delantera_izquierda.selectedIndex].value;
  11. var valor_2= document.formulario.s_puerta_delantera_izquierda[document.formulario.s_puerta_delantera_izquierda.selectedIndex].value;
  12. var valor_3= document.formulario.s_puerta_trasera_izquierda[document.formulario.s_puerta_trasera_izquierda.selectedIndex].value;
  13. var valor_4= document.formulario.s_aleta_trasera_izquierda[document.formulario.s_aleta_trasera_izquierda.selectedIndex].value;
  14. var valor_5= document.formulario.s_paragolpes_delantero[document.formulario.s_paragolpes_delantero.selectedIndex].value;
  15. var valor_6= document.formulario.s_paragolpes_trasero[document.formulario.s_paragolpes_trasero.selectedIndex].value;
  16. var valor_7= document.formulario.s_capo[document.formulario.s_capo.selectedIndex].value;
  17. var valor_8= document.formulario.s_maletero[document.formulario.s_maletero.selectedIndex].value;
  18. var valor_9= document.formulario.s_optica[document.formulario.s_optica.selectedIndex].value;
  19. var valor_10= document.formulario.s_techo[document.formulario.s_techo.selectedIndex].value;
  20. var valor_11= document.formulario.s_espejo[document.formulario.s_espejo.selectedIndex].value;
  21. var valor_12= document.formulario.s_aleta_delantera_derecha[document.formulario.s_aleta_delantera_derecha.selectedIndex].value;
  22. var valor_13= document.formulario.s_puerta_delantera_derecha[document.formulario.s_puerta_delantera_derecha.selectedIndex].value;
  23. var valor_14= document.formulario.s_puerta_trasera_derecha[document.formulario.s_puerta_trasera_derecha.selectedIndex].value;
  24. var valor_15= document.formulario.s_aleta_trasera_derecha[document.formulario.s_aleta_trasera_derecha.selectedIndex].value;
  25.  
  26. var detalle = new Array();
  27. detalle[1] = valor_1.split(‘|’);
  28. detalle[2] = valor_2.split(‘|’);
  29. detalle[3] = valor_3.split(‘|’);
  30. detalle[4] = valor_4.split(‘|’);
  31. detalle[5] = valor_5.split(‘|’);
  32. detalle[6] = valor_6.split(‘|’);
  33. detalle[7] = valor_7.split(‘|’);
  34. detalle[8] = valor_8.split(‘|’);
  35. detalle[9] = valor_9.split(‘|’);
  36. detalle[10] = valor_10.split(‘|’);
  37. detalle[11] = valor_11.split(‘|’);
  38. detalle[12] = valor_12.split(‘|’);
  39. detalle[13] = valor_13.split(‘|’);
  40. detalle[14] = valor_14.split(‘|’);
  41. detalle[15] = valor_15.split(‘|’);
  42.  
  43. var descripcion_txt = “;
  44. var estado_txt = “;
  45. var precio_txt = “;
  46. var suma_precio = null;
  47.  
  48. for (i=1;i<=15;i++) {
  49.    if (detalle[i][0] !=0) {
  50.        descripcion_txt = descripcion_txt+detalle[i][0]+’<br />’;
  51.         estado_txt = estado_txt+detalle[i][1]+’<br />’;
  52.         precio_txt = precio_txt+detalle[i][2]+’.00 &euro;<br />’;
  53.         suma_precio = suma_precio + parseInt(detalle[i][2]);
  54.       }
  55.    }
  56.  
  57. var suma_igic = suma_precio * 0.7;
  58. var total = suma_precio + suma_igic;
  59.  
  60. if (suma_precio > 0) {
  61.     document.getElementByld(’descripcion’).innerHTML = descrpcion_txt;
  62.     document.getElementByld(’estado’).innerHTML = estado_txt;
  63.     document.getElementByld(’precio’).innerHTML = precio_txt;
  64.     document.getElementByld(’total_precio’).innerHTML = suma_precio.toFixed(2)+’ &euro;<br />’+suma_igic.toFixed(2)+’ &euro;<br /><b>’+total.toFixed(2)+’</b> &euro;’;
  65.    } else {
  66.     document.getElementByld(’descripcion’).innerHTML = ’&nbsp;’;
  67.     document.getElementByld(’estado’).innerHTML = ’&nbsp;’;
  68.     document.getElementByld(’precio’).innerHTML = ’&nbsp;’;
  69.     document.getElementByld(’total_precio’).innerHTML = ’’;
  70.    }
  71.  
  72. }
  73.  
  74.     </head>
  75.     <body>
  76. <div class="centro_presupuesto">
  77.  
  78. <img alt="" src="http://talleresvehincar.com/wp-content/uploads/2014/03/Partes-del-Coche.png" />
  79.  
  80. <form action="#" name="formulario"><span class="t_aleta_delantera_izquierda">Aleta delantera</span>
  81.  
  82. <span style="position: absolute; top: 829px; left: 25px;"><select name="s_aleta_delantera_izquerda" onchange="calcular();"><option value="0">Seleccionar</option><option value="Aleta delantera izquierda|Leve|75">Leve: 75 €</option><option value="Aleta delantera izquierda|Medio|90">Medio: 90 €</option><option value="Aleta delantera izquierda|Fuerte|120">Fuerte: 120 €</option></select></span>
  83. &nbsp;
  84.  
  85. <span class="t_puerta_delantera_izquierda">Puerta delantera</span>
  86.  
  87. <span style="position: absolute; top: 531px; left: 153px;"><select name="s_puerta_delantera_izquerda" onchange="calcular();"><option value="0">Seleccionar</option><option value="Puerta delantera izquierda|Leve|90">Leve: 90 €</option><option value="Puerta delantera izquierda|Medio|110">Medio: 110 €</option><option value="Puerta delantera izquierda|Fuerte|120">Fuerte: 120 €</option></select></span>
  88. &nbsp;
  89.  
  90. &nbsp;
  91.  
  92. &nbsp;
  93.  
  94. <span class="t_puerta_trasera_izquierda">Puerta trasera</span>
  95.  
  96. ......................
  97.  
  98. <span class="t_techo">Techo</span>
  99.  
  100. <span style="position: absolute; top: 1196px; left: 275px;"><select name="s_techo" onchange="calcular();"><option value="0">Seleccionar</option><option value="Techo|Leve|120">Leve: 120 €</option><option value="Techo|Medio|150">Medio: 150 €</option><option value="Techo|Fuerte|180">Fuerte: 180 €</option></select></span>&nbsp;
  101.  
  102. &nbsp;
  103.  
  104. &nbsp;
  105.  
  106. <span class="t_espejo">Espejos</span>
  107.  
  108. <span style="position: absolute; top: 788px; left: 190px;"><select name="s_espejo" onchange="calcular();"><option value="0">Seleccionar</option><option value="1 Espejo|Leve|25">1 Leve: 25 €</option><option value="2 Espejos|Leve|50">2 Leve: 50 €</option><option value="1 Espejo|Medio|40">1 Medio: 40 €</option><option value="2 Espejos|Medio|80">2 Medio: 80 €</option></select></span>
  109. &nbsp;
  110.  
  111. </form></div>
  112. <!-- fin presupuesto -->
  113. <h2 style="text-align: center;"><strong><span style="color: #ff0000;">Calcule usted mismo su presupuesto de pintura</span></strong></h2>
  114. <p class="mensaje" style="text-align: center;"><span style="color: #000000;"><strong>Seleccione las partes del vehículo que desea incluir y le proporcionaremos un presupuesto.</strong></span></p>
  115. <div class="superior_presupuesto">
  116. <div class="info">
  117. <h4>Tipo de daño del vehículo</h4>
  118. <ul>
  119. <li>
  120. <span class="rojo">Daño leve: </span>
  121. Rayas pequeñas.
  122. </li>
  123. <li>
  124. <span class="rojo">Daño medio:</span>
  125. Golpes pequeños.
  126. </li>
  127. <li>
  128. <span class="rojo">Daño fuerte:</span>
  129. Golpes grandes.
  130. </li>
  131. </ul>
  132. </div>
  133. <div class="desglose_presupuesto">
  134. <table class="desglose_presupuesto" width="100%" cellspacing="0" cellpadding="0" border="0">
  135. <tr>
  136. <td class="datos" colspan="3">
  137. <form action="#" name="datos">
  138. <table width="100%" cellspacing="0" cellpadding="0" border="0">
  139. <tr>
  140. <td class="pequeno"></td>
  141. <td class="obligatorios_span">
  142. <h5>* campos obligatorios</h5>
  143. </td>
  144. </tr>
  145. <tr>
  146. <td class="etiqueta">Nombre y apellidos:</td>
  147. <td>
  148. <input type="text" name="nombre">
  149. </td>
  150. </tr>
  151. <tr>
  152. <td class="etiqueta">Marca:</td>
  153. <td>
  154. <input type="text" name="marca">
  155. </td>
  156. </tr>
  157. <tr>
  158. <td class="etiqueta">Modelo:</td>
  159. <td>
  160. <input type="text" name="modelo">
  161. </td>
  162. </tr>
  163. <tr>
  164. <td class="etiqueta">Teléfono:</td>
  165. <td>
  166. <input type="text" name="telefono">
  167. </td>
  168. </tr>
  169. <tr>
  170. <td class="etiqueta"> </td>
  171. <td></td>
  172. </tr>
  173. </form>
  174. </td>
  175. </tr>
  176. <tr>
  177. <td class="titulo tit_desc">Descripción</td>
  178. <td class="titulo">Daño</td>
  179. <td class="titulo tit_precio">Precio</td>
  180. </tr>
  181. <tr>
  182. <td id="descripcion" class="descripcion"></td>
  183. <td id="estado" class="estado"> </td>
  184. <td id="precio" class="precio"></td>
  185. </tr>
  186. <tr>
  187. <td class="igic" colspan="2">
  188. Subtotal
  189. <br>
  190. IGIC 7%
  191. <br>
  192. TOTAL
  193. <br>
  194. <h5>Presupuesto sujeto a aprobación del taller</h5>
  195. </td>
  196. <td id="total_precio" class="total"></td>
  197. </tr>
  198. <div id="imprimir" class="imprimir">
  199. <img onclick="imprimir();"">
  200. <span onclick="imprimir();">Imprimir el presupuesto</span>
  201. </div>
  202. </div>
  203. <div class="clearer"></div>
  204. </div>
  205.  
  206.     </body>
  207.     </html>

Agradezco vuestra ayuda

Etiquetas: formulario, html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:54.