Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/05/2013, 10:31
Avatar de Killerx_8937
Killerx_8937
 
Fecha de Ingreso: noviembre-2006
Mensajes: 99
Antigüedad: 17 años, 5 meses
Puntos: 0
Validacion te textbox

hola amigos.

les muestro un extracto de un fomualrio que tengo.

Código Javascript:
Ver original
  1. <form name="FormGranIng" method="post" action="">
  2.         <table>
  3.             <tr>
  4.                 <td>
  5.                     <table id="TablaA">
  6.                         <tr>
  7.                             <td><input name="A[]"  id="A" type="text" class="textbox"  size="4" maxlength="10" onChange="valNum(this);" tabindex="6"></td>
  8.                         </tr>
  9.                     </table>                </td>
  10.                 <td>
  11.                     <input type="button" class="button"  value="+"  onClick="agregarCelda('TablaA','A')">
  12. </td>
  13.             </tr>
  14.          </table>
  15. </form>

sobre este formulario estoy agregando celdas dinamicamente asi
Código Javascript:
Ver original
  1. function agregarCelda(idTabla,nombreCelda)
  2. {
  3.     nuevaFila = document.getElementById(idTabla).rows[0];
  4.  
  5.   nuevaCelda=nuevaFila.insertCell(-1);
  6.   nuevaCelda.innerHTML="<td><input name='"+nombreCelda+"[]' type='text' class='textbox' size='4' maxlength='10' onChange='valNum(this);'></td>";
  7.  
  8. }


Para validar el textbox le paso el objeto con el cual obtengo el value y el id para retornar el foco,

la funcion valNum es la siguiente

Código Javascript:
Ver original
  1. function valNum(numero)
  2. {
  3.     if (!/^[0-9]*\.?[0-9]{1,2}$/.test(numero.value))
  4.     {
  5.         alert("El valor " + numero.value + " no es un numero o tiene mas de 2 decimales");
  6.         document.getElementById(numero.id).value="";
  7.         document.getElementById(numero.id).focus();
  8.     }
  9.        
  10. }

el problema es que como estoy generando celdas y inputs dinamicamente, no se me ocurre como generar el id de cada textbox para que en caso que la validacion no tenga exito retornarle el foco u poner el campo en blanco.

se entiende??