Foros del Web » Programando para Internet » Javascript »

Obtener el valor de un nodo de tipo element!!!

Estas en el tema de Obtener el valor de un nodo de tipo element!!! en el foro de Javascript en Foros del Web. chicos, buenas. Esto se ejecuta cuando se aprieta un boton, que guarda lo seleccionado de un select y el valor de un campo de texto, ...
  #1 (permalink)  
Antiguo 20/09/2012, 07:15
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
Obtener el valor de un nodo de tipo element!!!

chicos, buenas. Esto se ejecuta cuando se aprieta un boton, que guarda lo seleccionado de un select y el valor de un campo de texto, luego crea una fila de una tabla en forma dinamica, con 3 columnas, las 2 primeras copiando los valores seleccionados y la 3er columna aparece un boton (dinamico) eliminar que borra en caso de error de tipeo, esa fila antes creada. Aparte de esto voy mostrando en una seccion de la pagina, la suma de los montos del input. Lo q no me sale es que al eliminar no me actuializa esa suma, borrando ese "valor" eliminado. no se si me entendieron. espero una pronta respuesta. Gracias!!

Código Javascript:
Ver original
  1. var orden=1;
  2. var monto=0;
  3. var pro=0;
  4. function calcula()
  5. {
  6. monto=montos.value;//guardo el valor del input
  7.  
  8. if (isNaN(monto))
  9. {
  10.  alert("NO ES UN NUMERO");
  11.  montos.value="";//lo borro
  12.  exit;
  13. }
  14. if( monto == null || monto.length == 0)
  15. {
  16.     alert("CAMPO VACIO");
  17.     montos.value="";//lo borro
  18.  exit;
  19. }
  20.  
  21.  
  22.  
  23.  
  24. monto=parseFloat(monto);//lo parseo
  25.  m1=parseFloat(m1);//parseo el acumulador
  26. m1=m1+monto;//voy acumulando el input del monto
  27. montos.value="";//lo borro
  28. pro=programa.options[programa.selectedIndex].value;//guardo el valor de los seleccionado en el select
  29. document.getElementById('aca').innerHTML = m1;//guardo en la etiqueta "aca" el valor del acumulador
  30.  
  31.  
  32.  
  33. var linea=document.getElementById('distribucion');//guardo la referncia de la linea
  34. var ultima=linea.rows.length;//obtengo la cantidad de celdas de la fila
  35. var row=linea.insertRow(ultima);//inserto 1 fila
  36. row.id=orden;
  37. var celda1=row.insertCell(0);//inserto 1 fila
  38. var celda2=row.insertCell(1);//inserto 1 fila
  39. var celda3=row.insertCell(2);//inserto 1 fila
  40.  
  41. celda1.innerHTML=pro;//pongo el destino en la celda
  42. celda2.innerHTML=monto;//pongo el monto en la celda
  43. celda3.innerHTML="<input class='medium green' type='button' value='Eliminar' onclick='eliminarUsuario(this)'>";//pongo el boton eliminar
  44. orden++;
  45. return false;
  46. }
  47.  
  48. function eliminarUsuario(obj)
  49. {
  50. var oTr = obj;
  51. while(oTr.nodeName.toLowerCase()!='tr')
  52. {
  53. oTr=oTr.parentNode;
  54. }
  55. //alert(oTr.text()));
  56. var root = oTr.parentNode;
  57. root.removeChild(oTr);
  58. var h=oTr.id;
  59.  
  60. //m1=m1-monto;
  61. //ocument.getElementById('aca').innerHTML = m1;
  62. alert(h);
  63. }
  #2 (permalink)  
Antiguo 21/09/2012, 07:33
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Obtener el valor de un nodo de tipo element!!!

Buenas de nuevo. Necesitaria que me ayuden por favor, si hay algo que no se entiende, pregunten.
  #3 (permalink)  
Antiguo 23/09/2012, 10:13
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Obtener el valor de un nodo de tipo element!!!

bien x el foro!! ni una respuesta!!! Gracias!!!
  #4 (permalink)  
Antiguo 23/09/2012, 10:32
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Obtener el valor de un nodo de tipo element!!!

Hola:

Por lo que veo, antes de borrar nada deberías rescatar el contenido de la celda donde está ese "monto", que parece ser oTr.childNodes[1].innerHTML cuando sale del bucle while... solo deberías restarlo...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Última edición por caricatos; 23/09/2012 a las 17:32 Razón: ortografía
  #5 (permalink)  
Antiguo 23/09/2012, 14:33
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Obtener el valor de un nodo de tipo element!!!

BUENO GRACIAS POR LA RESPUESTA, PERO YO YA LO HABIA PROBADA A ESO. ES DECIR
oTr.childNodes[1].inneHTML PERO ESTO AL SER UN NODO DE TIPO ELEMENT SI YO LO IMPRIMO AL VALOR ME DICE "undefined", QUE ES PORQUE NO OBTENGO EL VALOR, OBTENGO EL ELEMENTO X LO TANTO NO LO PUEDO RESTAR NI NADA
  #6 (permalink)  
Antiguo 23/09/2012, 17:31
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Obtener el valor de un nodo de tipo element!!!

Hola:

No sé a que te refieres con tipo "element"... el nodeType es numérico, y que yo sepa puede ser un tag, un contenido o un comentario (no recuerdo más)... si es un tag sin otras etiquetas anidadas, el contenido se puede conseguir con innerHTML o con firstChild.data o en vez de data nodeValue, y en vez de firstChild, al ser solo un hijo valdría lastChild, o childNodes[0]...

La verdad es que estoy dudando de que lo hayas probado.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 23/09/2012, 18:14
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Obtener el valor de un nodo de tipo element!!!

Hola:

Por cierto:

Código:
 SI YO LO IMPRIMO AL VALOR ME DICE "undefined"
Estás hablando de esta línea:

Código:
//alert(oTr.text()));
... si es así, es que conoces muy poco sobre el DOM

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 24/09/2012, 09:40
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Obtener el valor de un nodo de tipo element!!!

Cita:
Iniciado por charly163 Ver Mensaje
bien x el foro!! ni una respuesta!!! Gracias!!!
Esto es un foro de informática, no la sala de guardia de un hospital.
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #9 (permalink)  
Antiguo 24/09/2012, 15:10
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Obtener el valor de un nodo de tipo element!!!

caricatos: Ya se que no es una sala de urgencia, ni tampoco un chat que responden a los 30 segundos, pero subi una pregunta y habian pasado 3 dias, con 84 visitas y ni una respuesta, recien cuando me enoje, contestaron. Segundo "La verdad es que estoy dudando de que lo hayas probado.", la verdad no me gusta molestar a la gente, como para hacer preguntas y no probar las soluciones propuestas. Tercero: "si es así, es que conoces muy poco sobre el DOM", seguro que es asi, x eso pregunto a los que mas saben. Cuarto: Les agradezco, la ayuda, lamento no haberme echo entender yo. Gracias.
  #10 (permalink)  
Antiguo 24/09/2012, 17:58
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Obtener el valor de un nodo de tipo element!!!

Hola:

Cita:
Iniciado por charly163 Ver Mensaje
...Segundo "La verdad es que estoy dudando de que lo hayas probado.", la verdad no me gusta molestar a la gente, como para hacer preguntas y no probar las soluciones propuestas...
Sigo pensando que no lo has probado...

//alert(oTr.text()));

... si cambias eso de .text() por .innerHTML tal vez sepas mejor la respuesta... y en vez de replicar deberías aportarnos los datos que puedan sernos útil

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #11 (permalink)  
Antiguo 25/09/2012, 07:18
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Obtener el valor de un nodo de tipo element!!!

YA LO SOLUCIONE!! SI LO HABIA PROBADO, PERO NO FUNCIONABA. ESTE ES EL CODIGO.
Código:
var m1=0;
var orden=1;
var monto=0;
var pro=0;

function calcula()
{	
monto=montos.value;//guardo el valor del input

if (isNaN(monto))
{ 
 alert("NO ES UN NUMERO");
 montos.value="";//lo borro
 exit;
}
if( monto == null || monto.length == 0)
{
    alert("CAMPO VACIO");
    montos.value="";//lo borro
 exit;
}




monto=parseFloat(monto);//lo parseo
 m1=parseFloat(m1);//parseo el acumulador
m1=m1+monto;//voy acumulando el input del monto
montos.value="";//lo borro
pro=programa.options[programa.selectedIndex].value;//guardo el valor de los seleccionado en el select
document.getElementById('aca').innerHTML = m1;//guardo en la etiqueta "aca" el valor del acumulador



var linea=document.getElementById('distribucion');//guardo la referncia de la linea
var ultima=linea.rows.length;//obtengo la cantidad de celdas de la fila
var row=linea.insertRow(ultima);//inserto 1 fila 

var celda1=row.insertCell(0);//inserto 1 fila
var celda2=row.insertCell(1);//inserto 1 fila
var celda3=row.insertCell(2);//inserto 1 fila

celda1.innerHTML=pro;//pongo el destino en la celda
celda2.innerHTML=monto;//pongo el monto en la celda
celda3.innerHTML="<input class='medium green' type='button' value='Eliminar' onclick='eliminarUsuario(this)'>";//pongo el boton eliminar

return false;
}

function eliminarUsuario(obj)
{
var oTr = obj;
while(oTr.nodeName.toLowerCase()!='tr')
{
oTr=oTr.parentNode;
}
var d=oTr.childNodes[1].innerHTML;
var root = oTr.parentNode;
root.removeChild(oTr);
m1=m1-d;
document.getElementById('aca').innerHTML = m1;
}
LE AGREGUE EL INNERHTML Y SE LO DECREMENTE A LA VARIABLE M1 Y LO MOSTRE EN LA ETIQUETA "aca". GRACIAS!!!

Etiquetas: html, input, nodo, select, tipo, botones
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 05:53.