no se si te habra pasado por la mente... pero
al hacer el procedimiento (en mi caso), mando dentro de la peticion el div en donde quiero la respuesta
algo asi, en tu codigo:
Cita: function muestralo(str,url,en)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("El navegador no soporta funciones AJAX de HTTP Request")
return
}
url=url+"?q="+str+"&idc="+en
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
recojo el valor de idc, lo separo del proceso, y en respuesta lo mando al principio separado con un simbolo " * / - _ |", algo que te sirva de separacion al recibir la respuesta, haciendo esto:
Cita: function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
document.getElementById("temp").innerHTML="";
document.getElementById("temp").visible="none";
respuesta=split(xmlHttp .responseText,simbolo)
document.getElementById(respuesta[0]).innerHTML=respuesta[1]
}else{
/*
en esta parte utilizaria un div temporal, que estuviera encima de todo mientras se carga la respuesta,
*/
document.getElementById("temp").display="visible";
document.getElementById("temp").innerHTML='Cargan do...<img src="carga.gif" border=0>';
}
lo que esta en rojo seria anexo, de un div temporal con z-order=10, para que aparesca encima de todo tu codigo mientras se carga la informacion, una vez hecho se ocultaria
una idea, ojala pueda servirte a tu proposito