Foros del Web » Programando para Internet » Javascript »

Como obtengo el valor de este elemento de mi tabla html

Estas en el tema de Como obtengo el valor de este elemento de mi tabla html en el foro de Javascript en Foros del Web. Hola, necesito saber el valor de un input (de tipo text) por medio de javascript, que se encuentra dentro de una celda, que a su ...
  #1 (permalink)  
Antiguo 12/01/2014, 14:19
 
Fecha de Ingreso: julio-2013
Mensajes: 18
Antigüedad: 11 años, 4 meses
Puntos: 1
Pregunta Como obtengo el valor de este elemento de mi tabla html

Hola, necesito saber el valor de un input (de tipo text) por medio de javascript, que se encuentra dentro de una celda, que a su vez esta celda esta dentro del row. Lo unico con lo que dispongo es del id del row. Soy principiante, disculpen. Espero que me puedan ayudar. Gracias.

Código:
<table>
	<tr id="renglon01">
		<td>
                        <input type="text" id="alumno0">
                </td>
	</tr>
</table>
  #2 (permalink)  
Antiguo 12/01/2014, 14:26
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 2 meses
Puntos: 578
Respuesta: Como obtengo el valor de este elemento de mi tabla html

da igual donde esté, si sabes el ID es muy fácil:

Código Javascript:
Ver original
  1. var valor = document.getElementById("alumno0").value;

  #3 (permalink)  
Antiguo 12/01/2014, 14:34
 
Fecha de Ingreso: julio-2013
Mensajes: 18
Antigüedad: 11 años, 4 meses
Puntos: 1
Respuesta: Como obtengo el valor de este elemento de mi tabla html

Cita:
Iniciado por PHPeros Ver Mensaje
da igual donde esté, si sabes el ID es muy fácil:

Código Javascript:
Ver original
  1. var valor = document.getElementById("alumno0").value;

Creo que tienes razón, pero lo que pasa es que tengo mas inputs dentro del row (son 3 inputs en total), los cuales almacenan números (escritos por el usuario). Entonces debo sumar los tres valores de los inputs y calcular promedio (en un 4to input). Entonces solo debo enviar el id del renglón. Disculpa por no mencionarlo al principio.
  #4 (permalink)  
Antiguo 12/01/2014, 17:18
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Como obtengo el valor de este elemento de mi tabla html

¿El cálculo debe se automático o habría que pulsar un botón para averiguar el valor total que representa la suma de los valores de las tres cajas en cada fila?. De ser la segunda opción, podrías intentarlo de este modo:

Código Javascript:
Ver original
  1. var botones = document.getElementsByTagName("button"),
  2.     tabla = document.getElementsByTagName("table")[0];
  3.  
  4. for (i = 0, limite = botones.length; i < limite; i++){
  5.   (function(indice){
  6.     botones[indice].addEventListener("click", function(){
  7.       var fila = document.getElementsByTagName("tr")[indice],
  8.           cajas = fila.getElementsByTagName("input"),
  9.           resultado = document.getElementsByClassName("resultado")[indice],
  10.           total = 0;
  11.    
  12.       for(j = 0, limit = cajas.length; j < limit; j++){
  13.         if (!cajas[j].className.length)
  14.           total += cajas[j].value.length ? Number(cajas[j].value) : 0;
  15.       }
  16.    
  17.       resultado.value = total;
  18.     }, false);
  19.   })(i);
  20. }

Para este ejemplo, asumo que en cada fila, hay 3 cajas con valores ingresados por el usuario, una cuarta caja en donde se mostrará la suma de los valores de las 3 cajas anteriores y un botón que hará el cálculo. Tomo la tabla y todos los botones existentes en la tabla (si no quieres conflictos con otros botones que estén fuera de la tabla, te recomiendo asignar una clase para todos los botones y luego los tomas por el nombre de la clase). Luego, con ayuda de un bucle, recorro todos los botones que tomé previamente, asignándole a cada uno el evento click, para que cuando pulsemos cada botón, ejecute una función. En dicha función, tomo la fila equivalente al botón (si le doy clic al cuarto botón, se tomará la cuarta fila), todas las cajas que se encuentren en dicha fila, la caja del resultado (la cual tomo por el nombre de su clase, ya que las otras 3 cajas no tienen una clase establecida para así diferenciarlas de ésta) y establezco un acumulador para sumar todos los valores.

Con ayuda de otro bucle, recorro las cajas de la fila, si la caja no posee una clase, quiere decir que es una de las primeras tres cajas, procedo a tomar su valor y lo evalúo, si existe un valor (si la caja contiene un valor), lo transformo en tipo numérico y lo adiciono a total, caso contrario (si la caja está vacía), le adiciono cero, es decir, no se altera el valor acumulado.

Finalmente, asigno el valor de dicha suma a la caja del resultado. Todo esto se ejecuta dentro de una función anónima auto-ejecutable, la cual utilizo para poder aplicar correctamente las funciones a cada botón.

El resultado se vería así (con datos de ejemplo): http://jsbin.com/ifIXIZuf/1

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: clave, renglon
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 20:54.