Ver Mensaje Individual
  #7 (permalink)  
Antiguo 22/09/2009, 16:17
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 2 meses
Puntos: 126
Respuesta: Funcion muy extraña (SELECT && TEXT)

Hola

Ya que la parte de html me sonaba, la he buscado de un post anterior.

Prueba con esto

Código javascript:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta name="http-equiv" content="Content-type: text/html; charset=UTF-8"/>
  5. <script type="text/javascript">
  6. function calcular_edad(opt1,opt2,opt3) {
  7. var dia, mes, anyo
  8. if (opt1 == "") {dia = document.forma28.dia.options[document.forma28.dia.selectedIndex].value;} else { dia = opt1;}
  9. if (opt2 == "") {mes = document.forma28.mes.options[document.forma28.mes.selectedIndex].value;} else { mes = opt2;}
  10. if (opt3 == "") {anyo = document.forma28.ano.options[document.forma28.ano.selectedIndex].value;} else { anyo = opt3;}
  11.  
  12. var nacimiento =new Date(anyo, mes, dia)
  13. hoy = new Date()
  14. var cuantos_dias =1000*60*60*24*365
  15. document.getElementById("edad").value = (Math.ceil((hoy.getTime()-nacimiento.getTime())/(cuantos_dias))-1);
  16. }
  17.  
  18. function valida_envia(arg){
  19. var edad2 = arg.edad.value != "";
  20. var edad = arg.edad.value;
  21. if (!edad2) {
  22. alert("No sabemos tu edad")
  23.  
  24. }
  25. if (parseInt(edad) < 5){
  26.        
  27.          //document.form1.edad.focus()
  28.         alert("Debe tener 5 años por lo menos.")
  29. return false;
  30.          }
  31.          
  32.         if (parseInt(edad) <=8 && arg.categoria.options[arg.categoria.selectedIndex].value=="8"){
  33.         alert("Esta todo correcto.")    
  34. return false;      
  35.         }
  36.         else{
  37.         alert("No corresponde la categoria con la edad.")
  38. return false;
  39.         }
  40.    
  41.     }
  42. </script>
  43. </head>
  44. <body>
  45. <center> REGISTRO </center>
  46. <center>
  47.         <form name="forma28" action="index.php?mod=jugadores&pag=guardar" id="forma28" method="post" onSubmit="return valida_envia(this)" >
  48.          <table border="0" align="center"   id="gradient-style">
  49.            
  50.                 <tr>
  51.  
  52. <td> Categoria a Jugar:
  53.                 </td>
  54.                 <td> <select name="categoria" id="categoria">
  55.                     <option value=""> </option>
  56.                     <option value="8"> Sub 8</option>
  57.                     <option value="10 "> Sub 10 </option>
  58.                     <option value="12"> Sub 12</option>
  59.                     <option value="14"> Sub 14</option>
  60.                     <option value="16"> Sub 16</option>
  61.                     <option value="18"> Sub 18</option>
  62.                     <option value="20"> Sub 20</option>
  63.            
  64.                 </select></td>
  65.             </tr>
  66. <tr>
  67.  
  68.  
  69.  
  70.  
  71.                 <td> Fecha de Nacimiento </td>
  72.                 <td> <select name="dia" size="5" onchange="calcular_edad(this.options[this.selectedIndex].value,'','');">
  73.             <option value=""> D&Iacute;A</option>
  74.             <option value="1" selected> 1</option>
  75.             <option value="2"> 2</option>
  76.             <option value="3"> 3</option>
  77.             <option value="4"> 4</option>
  78.             <option value="5"> 5</option>
  79.             <option value="6"> 6</option>
  80.             <option value="7"> 7</option>
  81.             <option value="8"> 8</option>
  82.             <option value="9"> 9</option>
  83.             <option value="10"> 10</option>
  84.             <option value="11"> 11</option>
  85.             <option value="12"> 12</option>
  86.             <option value="13"> 13</option>
  87.             <option value="14"> 14</option>
  88.             <option value="15"> 15</option>
  89.             <option value="16"> 16</option>
  90.             <option value="17"> 17</option>
  91.             <option value="18"> 18</option>
  92.             <option value="19"> 19</option>
  93.             <option value="20"> 20</option>
  94.             <option value="21"> 21</option>
  95.             <option value="22"> 22</option>
  96.             <option value="23"> 23</option>
  97.             <option value="24"> 24</option>
  98.             <option value="25"> 25</option>
  99.             <option value="26"> 26</option>
  100.             <option value="27"> 27</option>
  101.             <option value="28"> 28</option>
  102.             <option value="29"> 29</option>
  103.             <option value="30"> 30</option>
  104.          </select>
  105.               <select name="mes" size="5" onchange="calcular_edad('',this.options[this.selectedIndex].value,'');">
  106.                 <option value=""> MES </option>
  107.                 <option value="0" selected> Enero</option>
  108.                 <option value="1"> Febrero</option>
  109.                 <option value="2"> Marzo</option>
  110.                 <option value="3"> Abril</option>
  111.                 <option value="4"> Mayo</option>
  112.                 <option value="5"> Junio</option>
  113.                 <option value="6"> Julio</option>
  114.                 <option value="7"> Agosto</option>
  115.                 <option value="8"> Septiembre</option>
  116.                 <option value="9"> Octubre</option>
  117.                 <option value="10"> Noviembre</option>
  118.                 <option value="11"> Diciembre</option>
  119.               </select>
  120.             <select name="ano"  size="5" onchange="calcular_edad('','',this.options[this.selectedIndex].value);">
  121.                 <option value=""> A&Ntilde;O</option>
  122.                 <option value="74" selected> 1974</option>
  123.                 <option value="75"> 1975</option>
  124.                 <option value="76"> 1976</option>
  125.                 <option value="77"> 1977</option>
  126.                 <option value="78"> 1978</option>
  127.                 <option value="79"> 1979</option>
  128.                 <option value="80"> 1980</option>
  129.                 <option value="81"> 1981</option>
  130.                 <option value="82"> 1982</option>
  131.                 <option value="83"> 1983</option>
  132.                 <option value="84"> 1984</option>
  133.                 <option value="85"> 1985</option>
  134.                 <option value="86"> 1986</option>
  135.                 <option value="87"> 1987</option>
  136.                 <option value="88"> 1988</option>
  137.                 <option value="89"> 1989</option>
  138.                 <option value="90"> 1990</option>
  139.                 <option value="91"> 1991</option>
  140.                 <option value="92"> 1992</option>
  141.                 <option value="93"> 1993</option>
  142.                 <option value="94"> 1994</option>
  143.                 <option value="95"> 1995</option>
  144.                 <option value="96"> 1996</option>
  145.                 <option value="97"> 1997</option>
  146.                 <option value="98"> 1998</option>
  147.                 <option value="99"> 1999</option>
  148.                 <option value="2000"> 2000</option>
  149.                 <option value="2001"> 2001</option>
  150.                 <option value="2002"> 2002</option>
  151.                 <option value="2003"> 2003</option>
  152.                 <option value="2004"> 2004</option>
  153.                 <option value="2005"> 2005</option>
  154.                 <option value="2006"> 2006</option>
  155.                 <option value="2007"> 2007</option>
  156.                 <option value="2008"> 2008</option>
  157.                 </select>
  158.                 </td>
  159.                 </tr>
  160.             <tr>
  161.             <tr>
  162.                 <td>Edad:</td>
  163.                 <td><input type="text" id="edad" name="edad" size="10" maxlength="2">
  164.                 </td>
  165.         </tr>
  166.  
  167. <tr>
  168.                 <td colspan="2" align="center"> <input type="submit" value="Enviar" >  
  169.                    <input  type="button" value="Cancelar">
  170. </td>
  171. </tr>
  172.     </table>
  173.        
  174. </body>
  175. </html>

Ahora, al estar montandolo me dado cuenta que la función valida_envia() no tiene mucho sentido, pero .....

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />