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

Llamar dos funciones AJAX desde el mismo link

Estas en el tema de Llamar dos funciones AJAX desde el mismo link en el foro de Frameworks JS en Foros del Web. hola, estoy intentado llamar dos funciones con un mismo click, con un mismo evento, bueno logro que me habra uno pero el otro no me ...
  #1 (permalink)  
Antiguo 18/07/2009, 13:30
Avatar de miguec04  
Fecha de Ingreso: agosto-2008
Ubicación: Cimitarra, Santander
Mensajes: 378
Antigüedad: 15 años, 8 meses
Puntos: 15
Llamar dos funciones AJAX desde el mismo link

hola, estoy intentado llamar dos funciones con un mismo click, con un mismo evento, bueno logro que me habra uno pero el otro no me habre no se porque o que estoy haciendo mal, cada uno lo llamo en un div diferente, osea cada funcion me va a recargar informacion en un div diferente que estan dentro de un div general cada uno. no se que hacer aqui dejo los codigos que estoy usando agradezco cualquier ayudita, muchas gracias.

Cita:
<a id="menu_superior" href="#<?php echo $titulo[$i]; ?>" onclick="titulos('titulos.php?titulos=<?php echo $titulo[$i]; ?>'); llamar('partes/<?php echo $link[$i]; ?>?id=<?php echo $id_menu[$i]; ?>'); "><?php echo $titulo[$i]; ?></a>
y el JS es el siguiente

Cita:
function objetoAjax(){
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}

if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}


function llamar(datos)
{
div = document.getElementById("contenido");
div.innerHTML= "<div align=\"center\"><img src=\"imagenes/cargando.gif\"/><br><b><font size=\"-1\" color=\"#000033\" face=\"verdana,arial\">Cargando...</font></b></div>";
//div_tabla = document.getElementById("tabla");
// div_tabla.innerHTML = "<div></div>";
ajax=objetoAjax();
ajax.open("POST", datos,true);
ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
//mostrar resultados en esta capa

div.innerHTML = ajax.responseText
//llamar a funcion para limpiar los inputs
//MostrarFormulario();
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviando los valores
ajax.send(null)
}

function titulos(daticos)
{
div = document.getElementById("titulos");
div.innerHTML= "<div align=\"center\"><img src=\"imagenes/cargando.gif\"/><br><b><font size=\"-1\" color=\"#000033\" face=\"verdana,arial\">Cargando...</font></b></div>";
//div_tabla = document.getElementById("tabla");
// div_tabla.innerHTML = "<div></div>";
ajax=objetoAjax();
ajax.open("POST", daticos,true);
ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
//mostrar resultados en esta capa

div.innerHTML = ajax.responseText
//llamar a funcion para limpiar los inputs
//MostrarFormulario();
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviando los valores
ajax.send(null)
}
gracias amigos.
__________________
Desoftc Technology - Miguel Carmona
Creaciones Inteligentes - Cimitarra Colombia
[email protected]
http://www.desoftc.com.co
  #2 (permalink)  
Antiguo 18/07/2009, 15:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: hola amigos, ayuda con este error.

Tema trasladado desde PHP
  #3 (permalink)  
Antiguo 18/07/2009, 15:26
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Llamar dos funciones AJAX desde el mismo link

Si revisas en el foro puedes ver que el problema es porque usas la misma instancia al crear ObjetoAjax();, necesitas modificar tu funcion o usar una clase que te permita instanciar el objeto de forma independiente.

Saludos.
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 22:19.