Foros del Web » Creando para Internet » HTML »

ayuda con formulario

Estas en el tema de ayuda con formulario en el foro de HTML en Foros del Web. Hice un formulario para reservas de un hotel, funciona en el dreamweaver pero no en IE, cual puede ser el problema Código: <!DOCTYPE html PUBLIC ...
  #1 (permalink)  
Antiguo 19/06/2010, 20:32
 
Fecha de Ingreso: junio-2010
Mensajes: 5
Antigüedad: 14 años, 5 meses
Puntos: 0
ayuda con formulario

Hice un formulario para reservas de un hotel, funciona en el dreamweaver pero no en IE, cual puede ser el problema


Código:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>


<!-- Suma -->
<script type="text/javascript"> 
function Sumar(){ 
interval = setInterval("calcular()",1); 
} 
function calcular(){ 
uno = document.autoSumForm.Simple.value;
dos = document.autoSumForm.Doble.value;
tres = document.autoSumForm.Matrimonial.value;
cuatro = document.autoSumForm.Familiar.value;
cinco = document.autoSumForm.Adicional.value;
seis = document.autoSumForm.Noches.value;
siete = document.autoSumForm.subtotal.value;

document.autoSumForm.subtotal.value = (uno * 30) + (dos * 50) + (tres * 50) + (cuatro * 70) + (cinco * 20); 
document.autoSumForm.total.value = (siete * 1) * (seis * 1); 

} 
function NoSumar(){ 
clearInterval(interval); 
} 
</script> 
<!-- Fin suma -->

<form id="autoSumForm" name="autoSumForm" method="post" action="Reservar.php">
      <h2>Datos Personales </h2>
      <table width="600" border="0" align="center">
        <tr>
          <td align="right">Nombres y Apellidos: </td>
          <td align="left"> <label> 
          
          <input name="nombre" type="text" id="nombre" size="31" />
          
        </label></td>
        </tr>
        <tr>
          <td align="right">Pais de Origen: </td>
          <td align="left"><label> 
          
          <input name="pais" type="text" id="pais" size="31" />
          
        </label></td>
        </tr>
        <tr>
          <td align="right">Documento de identidad: </td>
          <td align="left"> <label> 
          
          <input name="passport" type="text" id="passport" size="31" />
          
        </label></td>
        </tr>
        <tr>
          <td align="right">Fecha de Nacimiento (dd/mm/aaaa): </td>
          <td align="left"><label> 
          
          <input name="nacimiento" type="text" id="nacimiento" size="31" />
          
        </label></td>
        </tr>
        <tr>
          <td align="right">Telefono de Contacto: </td>
          <td align="left"><label> 
          
          <input name="telefono" type="text" id="telefono" size="31" />
          
        </label></td>
        </tr>
        <tr>
          <td align="right">Correo electrónico: </td>
          <td align="left"> <label> 
          
          <input name="email" type="text" id="email" size="31" />
          
        </label></td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td align="left">&nbsp;</td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td align="left">&nbsp;</td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td align="left">&nbsp;</td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td align="left">&nbsp;</td>
        </tr>
      </table>
      <h2> 
        
        Datos de Reserva</h2>
      <h5>&nbsp;</h5>
      <table width="600" border="0">
  <tr>
          <td width="150">Habitacion Simple</td>
          <td width="150">Habitacion Doble</td>
          <td width="150">Habitacion Matrimonial</td>
          <td width="150">Habitacion Familiar</td>
          <td width="150">Cama adicional</td>
          <td>Número de noches</td>
    </tr>
  <tr>
          <td><label>
            <select name="Simple" id="Simple" onfocus="Sumar();" onblur="NoSumar();">
              <option>0</option>
              <option>1</option>
              <option>2</option>
              <option>3</option>
              <option>4</option>
              <option>5</option>
              <option>6</option>
              <option>7</option>
              <option>8</option>
              <option>9</option>
              <option>10</option>
              </select>
            </label></td>
    <td> <label>
      <select name="Doble" id="Doble" onfocus="Sumar();" onblur="NoSumar();">
        <option>0</option>
        <option>1</option>
        <option>2</option>
        <option>3</option>
        <option>4</option>
        <option>5</option>
        <option>6</option>
        <option>7</option>
        <option>8</option>
        <option>9</option>
        <option>10</option>
        </select>
      </label></td>
    <td><label>
      <select name="Matrimonial" id="Matrimonial" onfocus="Sumar();" onblur="NoSumar();">
        <option>0</option>
        <option>1</option>
        <option>2</option>
        <option>3</option>
      </select>
      </label></td>
    <td><label>
      <select name="Familiar" id="Familiar" onfocus="Sumar();" onblur="NoSumar();">
        <option>0</option>
        <option>1</option>
        <option>2</option>
</select>
      </label></td>
    <td> <label>
      <select name="Adicional" id="Adicional" onfocus="Sumar();" onblur="NoSumar();">
        <option>0</option>
        <option>1</option>
        <option>2</option>
        <option>3</option>
        <option>4</option>
        </select>
      </label></td>
    <td><select name="Noches" id="Noches" onfocus="Sumar();" onblur="NoSumar();">
      <option selected="selected">1</option>
      <option>2</option>
      <option>3</option>
      <option>5</option>
      <option>6</option>
      <option>7</option>
      <option>8</option>
      <option>9</option>
      <option>10</option>
    </select></td>
    </tr>
  <tr>
    <td colspan="2">&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td><input name="subtotal" type="text" class="cajon" id="subtotal" /></td>
    <td><input name="total" type="text" class="cajon" id="total" /></td>
  </tr>
  <tr>
    <td colspan="3">&nbsp;</td>
    <td colspan="3">&nbsp;</td>
    </tr>
  <tr>
    <td colspan="3">&nbsp;</td>
    <td colspan="3">&nbsp;</td>
    </tr>
  <tr>
    <td colspan="3">&nbsp;</td>
    <td colspan="3">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="6">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="6"><select name='arrival_day' onchange='triggerDates(document.searchAgain.arrival_day[document.searchAgain.arrival_day.selectedIndex].value, document.searchAgain.arrival_month[document.searchAgain.arrival_month.selectedIndex].value,document.searchAgain.arrival_year[document.searchAgain.arrival_year.selectedIndex].value)'>
      <option value='1'>01</option>
      <option value='2'>02</option>
      <option value='3'>03</option>
      <option value='4'>04</option>
      <option value='5'>05</option>
      <option value='6'>06</option>
      <option value='7'>07</option>
      <option value='8'>08</option>
      <option value='9'>09</option>
      <option value='10'>10</option>
      <option value='11'>11</option>
      <option value='12'>12</option>
      <option value='13'>13</option>
      <option value='14' selected="selected">14</option>
      <option value='15'>15</option>
      <option value='16'>16</option>
      <option value='17'>17</option>
      <option value='18'>18</option>
      <option value='19'>19</option>
      <option value='20'>20</option>
      <option value='21'>21</option>
      <option value='22'>22</option>
      <option value='23'>23</option>
      <option value='24'>24</option>
      <option value='25'>25</option>
      <option value='26'>26</option>
      <option value='27'>27</option>
      <option value='28'>28</option>
      <option value='29'>29</option>
      <option value='30'>30</option>
      <option value='31'>31</option>
    </select>
      <select name='arrival_month' onchange='triggerDates(document.searchAgain.arrival_day[document.searchAgain.arrival_day.selectedIndex].value, document.searchAgain.arrival_month[document.searchAgain.arrival_month.selectedIndex].value,document.searchAgain.arrival_year[document.searchAgain.arrival_year.selectedIndex].value)'>
        <option value='0'>Jan</option>
        <option value='1'>Feb</option>
        <option value='2'>Mar</option>
        <option value='3'>Apr</option>
        <option value='4'>May</option>
        <option value='5' selected="selected">Jun</option>
        <option value='6'>Jul</option>
        <option value='7'>Aug</option>
        <option value='8'>Sep</option>
        <option value='9'>Oct</option>
        <option value='10'>Nov</option>
        <option value='11'>Dec</option>
      </select>
      <select name='arrival_year' onchange='triggerDates(document.searchAgain.arrival_day[document.searchAgain.arrival_day.selectedIndex].value, document.searchAgain.arrival_month[document.searchAgain.arrival_month.selectedIndex].value,document.searchAgain.arrival_year[document.searchAgain.arrival_year.selectedIndex].value)'>
        <option value='2010' selected="selected">2010</option>
        <option value='2011'>2011</option>
        <option value='2012'>2012</option>
        <option value='2013'>2013</option>
      </select></td>
  </tr>
  <tr>
    <td colspan="6">Comentarios adicionales:</td>
  </tr>
  <tr>
    <td colspan="6"><textarea name="mensaje" id="mensaje" rows="5" cols="25"></textarea> </td>
    </tr>
      </table>
      <br>
        <br/> 
        
        
        
        <br />
        <br />
        <label>
          <input type="submit" name="Submit" value="Reservar ahora" /> 
        </label>
      
        </p>
    </form>
</body>
</html>
  #2 (permalink)  
Antiguo 19/06/2010, 21:10
Avatar de Anon722  
Fecha de Ingreso: noviembre-2009
Mensajes: 58
Antigüedad: 15 años
Puntos: 0
Respuesta: ayuda con formulario

El WYSIWYG en realidad no es tal.

Te conviene no confiarte en el display de dreamweaver y seguir las especificaciones del W3C.
  #3 (permalink)  
Antiguo 20/06/2010, 05:28
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 14 años, 5 meses
Puntos: 310
Respuesta: ayuda con formulario

Hay errores y hay redundancias, voy a comentarl@s:

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.  function Sumar(){
  3.   interval = setInterval("calcular()",500);//esto va con milisegundos, con medio segundo te vale, si no se ralentiza
  4.  }
  5.  function calcular(){
  6.   uno = document.autoSumForm.Simple.value;
  7.   dos = document.autoSumForm.Doble.value;
  8.   tres = document.autoSumForm.Matrimonial.value;
  9.   cuatro = document.autoSumForm.Familiar.value;
  10.   cinco = document.autoSumForm.Adicional.value;
  11.   seis = document.autoSumForm.Noches.value;
  12.   siete = document.autoSumForm.subtotal.value;
  13.   document.autoSumForm.subtotal.value = uno * 30 + dos * 50 + tres * 50 + cuatro * 70 + cinco * 20;//todos estos paréntesis sobran
  14.   document.autoSumForm.total.value = siete *seis ;//¿por qué lo multiplicas por 1?
  15.  }
  16.  function NoSumar(){
  17.   clearInterval(interval);
  18.  }
  19. </script>

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. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Untitled Document</title>
  5. </head>
  6. <form id="autoSumForm" name="autoSumForm" method="post" action="Reservar.php">
  7.       <h2>Datos Personales </h2>
  8.       <table width="600" border="0" align="center">
  9.         <tr>
  10.           <td align="right">Nombres y Apellidos: </td>
  11.           <td align="left"> <label>
  12.          
  13.           <input name="nombre" type="text" id="nombre" size="31" />
  14.          
  15.         </label></td>
  16.         </tr>
  17.         <tr>
  18.           <td align="right">Pa&iacute;s de Origen: </td>
  19.           <td align="left"><label>
  20.          
  21.           <input name="pais" type="text" id="pais" size="31" />
  22.          
  23.         </label></td>
  24.         </tr>
  25.         <tr>
  26.           <td align="right">Documento de identidad: </td>
  27.           <td align="left"> <label>
  28.          
  29.           <input name="passport" type="text" id="passport" size="31" />
  30.          
  31.         </label></td>
  32.         </tr>
  33.         <tr>
  34.           <td align="right">Fecha de Nacimiento (dd/mm/aaaa): </td>
  35.           <td align="left"><label>
  36.          
  37.           <input name="nacimiento" type="text" id="nacimiento" size="31" />
  38.          
  39.         </label></td>
  40.         </tr>
  41.         <tr>
  42.           <td align="right">Tel&eacute;fono de Contacto: </td>
  43.           <td align="left"><label>
  44.          
  45.           <input name="telefono" type="text" id="telefono" size="31" />
  46.          
  47.         </label></td>
  48.         </tr>
  49.         <tr>
  50.           <td align="right">Correo electr&oacute;nico: </td>
  51.           <td align="left"> <label>
  52.          
  53.           <input name="email" type="text" id="email" size="31" />
  54.          
  55.         </label></td>
  56.         </tr>
  57.         <tr>
  58.           <td>&nbsp;</td>
  59.           <td align="left">&nbsp;</td>
  60.         </tr>
  61.         <tr>
  62.           <td>&nbsp;</td>
  63.           <td align="left">&nbsp;</td>
  64.         </tr>
  65.         <tr>
  66.           <td>&nbsp;</td>
  67.           <td align="left">&nbsp;</td>
  68.         </tr>
  69.         <tr>
  70.           <td>&nbsp;</td>
  71.           <td align="left">&nbsp;</td>
  72.         </tr>
  73.       </table>
  74.       <h2>
  75.        
  76.         Datos de Reserva</h2>
  77.       <h5>&nbsp;</h5>
  78.       <table width="600" border="0">
  79.   <tr>
  80.           <td width="150">Habitaci&oacute;n Simple</td>
  81.           <td width="150">Habitaci&oacute;n Doble</td>
  82.           <td width="150">Habitaci&oacute;n Matrimonial</td>
  83.           <td width="150">Habitaci&oacute;n Familiar</td>
  84.           <td width="150">Cama adicional</td>
  85.           <td>N&uacute;mero de noches</td>
  86.     </tr>
  87.   <tr>
  88.           <td><label>
  89.  
  90. <!--necesitas un onchange, para que cada vez que cambie te coja el valor-->
  91. <!---además tienes que darle un value a cada option, sino no sirve de nada sumar-->
  92.             <select name="Simple" id="Simple" onchange="Sumar();">
  93.               <option>0</option>
  94.               <option>1</option>
  95.               <option>2</option>
  96.               <option>3</option>
  97.               <option>4</option>
  98.               <option>5</option>
  99.               <option>6</option>
  100.               <option>7</option>
  101.               <option>8</option>
  102.               <option>9</option>
  103.               <option>10</option>
  104.               </select>
  105.             </label></td>
  106.     <td> <label>
  107.       <select name="Doble" id="Doble" onchange="Sumar();">
  108.         <option>0</option>
  109.         <option>1</option>
  110.         <option>2</option>
  111.         <option>3</option>
  112.         <option>4</option>
  113.         <option>5</option>
  114.         <option>6</option>
  115.         <option>7</option>
  116.         <option>8</option>
  117.         <option>9</option>
  118.         <option>10</option>
  119.         </select>
  120.       </label></td>
  121.     <td><label>
  122.       <select name="Matrimonial" id="Matrimonial" onchange="Sumar();">
  123.         <option>0</option>
  124.         <option>1</option>
  125.         <option>2</option>
  126.         <option>3</option>
  127.       </select>
  128.       </label></td>
  129.     <td><label>
  130.       <select name="Familiar" id="Familiar" onchange="Sumar();">
  131.         <option>0</option>
  132.         <option>1</option>
  133.         <option>2</option>
  134.       </label></td>
  135.     <td> <label>
  136.       <select name="Adicional" id="Adicional" onchange="Sumar();">
  137.         <option>0</option>
  138.         <option>1</option>
  139.         <option>2</option>
  140.         <option>3</option>
  141.         <option>4</option>
  142.         </select>
  143.       </label></td>
  144.     <td><select name="Noches" id="Noches" onchange="Sumar();">
  145.       <option selected="selected">1</option>
  146.       <option>2</option>
  147.       <option>3</option>
  148.       <option>5</option>
  149.       <option>6</option>
  150.       <option>7</option>
  151.       <option>8</option>
  152.       <option>9</option>
  153.       <option>10</option>
  154.     </select></td>
  155.     </tr>
  156.   <tr>
  157.     <td colspan="2">&nbsp;</td>
  158.     <td>&nbsp;</td>
  159.     <td>&nbsp;</td>
  160.     <td><input name="subtotal" type="text" class="cajon" id="subtotal" /></td>
  161.     <td><input name="total" type="text" class="cajon" id="total" /></td>
  162.   </tr>
  163.   <tr>
  164.     <td colspan="3">&nbsp;</td>
  165.     <td colspan="3">&nbsp;</td>
  166.     </tr>
  167.   <tr>
  168.     <td colspan="3">&nbsp;</td>
  169.     <td colspan="3">&nbsp;</td>
  170.     </tr>
  171.   <tr>
  172.     <td colspan="3">&nbsp;</td>
  173.     <td colspan="3">&nbsp;</td>
  174.   </tr>
  175.   <tr>
  176.     <td colspan="6">&nbsp;</td>
  177.   </tr>
  178.   <tr>
  179.     <td colspan="6"><select name='arrival_day' onchange='triggerDates(document.searchAgain.arrival_day[document.searchAgain.arrival_day.selectedIndex].value, document.searchAgain.arrival_month[document.searchAgain.arrival_month.selectedIndex].value,document.searchAgain.arrival_year[document.searchAgain.arrival_year.selectedIndex].value)'>
  180.       <option value='1'>01</option>
  181.       <option value='2'>02</option>
  182.       <option value='3'>03</option>
  183.       <option value='4'>04</option>
  184.       <option value='5'>05</option>
  185.       <option value='6'>06</option>
  186.       <option value='7'>07</option>
  187.       <option value='8'>08</option>
  188.       <option value='9'>09</option>
  189.       <option value='10'>10</option>
  190.       <option value='11'>11</option>
  191.       <option value='12'>12</option>
  192.       <option value='13'>13</option>
  193.       <option value='14' selected="selected">14</option>
  194.       <option value='15'>15</option>
  195.       <option value='16'>16</option>
  196.       <option value='17'>17</option>
  197.       <option value='18'>18</option>
  198.       <option value='19'>19</option>
  199.       <option value='20'>20</option>
  200.       <option value='21'>21</option>
  201.       <option value='22'>22</option>
  202.       <option value='23'>23</option>
  203.       <option value='24'>24</option>
  204.       <option value='25'>25</option>
  205.       <option value='26'>26</option>
  206.       <option value='27'>27</option>
  207.       <option value='28'>28</option>
  208.       <option value='29'>29</option>
  209.       <option value='30'>30</option>
  210.       <option value='31'>31</option>
  211.     </select>
  212.       <select name='arrival_month' onchange='triggerDates(document.searchAgain.arrival_day[document.searchAgain.arrival_day.selectedIndex].value, document.searchAgain.arrival_month[document.searchAgain.arrival_month.selectedIndex].value,document.searchAgain.arrival_year[document.searchAgain.arrival_year.selectedIndex].value)'>
  213.         <option value='0'>Jan</option>
  214.         <option value='1'>Feb</option>
  215.         <option value='2'>Mar</option>
  216.         <option value='3'>Apr</option>
  217.         <option value='4'>May</option>
  218.         <option value='5' selected="selected">Jun</option>
  219.         <option value='6'>Jul</option>
  220.         <option value='7'>Aug</option>
  221.         <option value='8'>Sep</option>
  222.         <option value='9'>Oct</option>
  223.         <option value='10'>Nov</option>
  224.         <option value='11'>Dec</option>
  225.       </select>
  226.       <select name='arrival_year' onchange='triggerDates(document.searchAgain.arrival_day[document.searchAgain.arrival_day.selectedIndex].value, document.searchAgain.arrival_month[document.searchAgain.arrival_month.selectedIndex].value,document.searchAgain.arrival_year[document.searchAgain.arrival_year.selectedIndex].value)'>
  227.         <option value='2010' selected="selected">2010</option>
  228.         <option value='2011'>2011</option>
  229.         <option value='2012'>2012</option>
  230.         <option value='2013'>2013</option>
  231.       </select></td>
  232.   </tr>
  233.   <tr>
  234.     <td colspan="6">Comentarios adicionales:</td>
  235.   </tr>
  236.   <tr>
  237.     <td colspan="6"><textarea name="mensaje" id="mensaje" rows="5" cols="25"></textarea> </td>
  238.     </tr>
  239.       </table>
  240.       <br>
  241.         <br/>
  242.        
  243.        
  244.        
  245.         <br />
  246.         <br />
  247.         <label>
  248.           <input type="submit" name="Submit" value="Reservar ahora" />
  249.         </label>
  250.      
  251.         </p>
  252.     </form>
  253. </body>
  254. </html>
  #4 (permalink)  
Antiguo 20/06/2010, 05:29
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 14 años, 5 meses
Puntos: 310
Respuesta: ayuda con formulario

PD:(No me cabía en el otro post)
Además, para que no le tengas que poner un value a cada option puedes usar algo como esto (siempre y cuando el value que le quieras dar sea lo mismo que ve el usuario en cada option):
Código Javascript:
Ver original
  1. function valor(a){
  2.  a.value=a.options[a.selectedIndex].text;
  3. }
Y llamarlo así
Código HTML:
Ver original
  1. <select name='tuselect' onchange='tufuncion(); valor(this);'>

Saludos (:
  #5 (permalink)  
Antiguo 20/06/2010, 09:50
 
Fecha de Ingreso: junio-2010
Mensajes: 5
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: ayuda con formulario

Gracias por las correcciones, pero aun sigue sin funcionar en IE
  #6 (permalink)  
Antiguo 20/06/2010, 10:33
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 14 años, 5 meses
Puntos: 310
Respuesta: ayuda con formulario

¿Pero qué es lo que no funciona?¿Y qué dice la consola de errores?
Saludos (:

Etiquetas: formulario
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 22:46.