Foros del Web » Programando para Internet » Javascript » Frameworks JS »

problema al insertar celdas con ajax

Estas en el tema de problema al insertar celdas con ajax en el foro de Frameworks JS en Foros del Web. hola de nuevo a todos, espero ahora si alguien tenga solucion a mi problema estoy desarrollando una página Web que realiza una consulta MySQL con ...
  #1 (permalink)  
Antiguo 04/02/2011, 18:48
 
Fecha de Ingreso: junio-2008
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 0
problema al insertar celdas con ajax

hola de nuevo a todos, espero ahora si alguien tenga solucion a mi problema estoy desarrollando una página Web que realiza una consulta MySQL con php y los datos los pone en XML y estos son recogidos por Ajax y deveria mostrarlos en forma de tabla en la pagina pero al llamar a la funcion que crea la tabla me marca con error:
Código HTML:
function costruye_tabla()
{
	conexion=crea_objeto();
	objDiv = document.getElementById("Tabla_contactos");
	objDiv.innerHTML="";
	objTabla=document.createElement("table");
	objDiv.appendChild(objTabla);
	objTabla.border=1;
	objTabla.width="50%";
	objTabla.align="center";
	var tr = objTabla.insertRow(-1);
	var th = document.createElement('th');
	th.innerHTML="Clave";
	tr.appendChild(th);
	var th = document.createElement('th');
	th.innerHTML="Nombre";
	tr.appendChild(th);
	var th = document.createElement('th');
	th.innerHTML="Edad";
	tr.appendChild(th);
	var th = document.createElement('th');
	th.innerHTML="Estado";
	tr.appendChild(th);
	var th = document.createElement('th');
	th.innerHTML="Lugar";
	tr.appendChild(th);
	vNombre_b = document.getElementById("txtBNombre");
	conexion.onreadystatechange=cambia_busqueda;
	conexion.open("POST","busca_con_nom.php",true);
	conexion.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	conexion.send("nombre="+vNombre_b);
}
function cambia_busqueda()
{
	if(conexion.readyState == 4)
	{
		objXML = conexion.responseXML;
		objClave= objXML.getElementsByTagName("clave");
		for(i=0; i<3; i++)
		{
			var tr = objTabla.insertRow(-1);
			var col = document.createElement('td');
			col.innerHTML = objClave[i].firstChild.nodeValue;
                        tr.appendChild(col);
		}
	}
}
es en esta linea col.innerHTML = objClave[i].firstChild.nodeValue;
donde me marca el error, dice que se esperaba un objeto y ya no hace nada, alguna solución?
  #2 (permalink)  
Antiguo 04/02/2011, 20:07
 
Fecha de Ingreso: junio-2008
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: problema al insertar celdas con ajax

Saludos, checando el código y moviendole un poco vi que el error es de esta linea:
objClave[i].firstChild.nodeValue;
Al parecer no contiene nada o el objeto no se ha creado correctamente lo cual tiene que ver directamente con esta otra linea:
objXML.getElementsByTagName("clave");
por lo cual quisiera saber ¿por que está mal o si lo estoy aplicando de manera incorrecta como seria la sintaxis correcta?
  #3 (permalink)  
Antiguo 04/02/2011, 22:29
 
Fecha de Ingreso: junio-2008
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: problema al insertar celdas con ajax

Pues como siempre en este foro nunca obtengo respuesta, en fin ya resolvi el problema y ya jala todo bien.

No se como cerrar el post asi que solo digo que quedó resuleto el asunto.
  #4 (permalink)  
Antiguo 05/02/2011, 02:13
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: problema al insertar celdas con ajax

Hola:

Cita:
Iniciado por Hypnoss Ver Mensaje
Pues como siempre en este foro nunca obtengo respuesta, en fin ya resolvi el problema y ya jala todo bien.

No se como cerrar el post asi que solo digo que quedó resuleto el asunto.
En vez de quejarte lo que se suele hacer en estos casos es mostrar la manera de resolver el caso, ya que podría serle útil a utros usuarios.

Revisando el mensaje me imagino que si no existe en un tag un elemento "firstChild", se resuelve realizando un chequeo de su existencia...

if (elemento.hasChildNodes())...

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

Etiquetas: ajax, celdas
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:46.