He estado tocando un poco algun funcion de Maborak (Maborak, te parece bien?¿ )
http://69.56.196.226/~maborak/leimnud/ver.php?
Intentaba tener una funcion para hacer muchas cosas, peo creo q es imposible :(
La idea seria tener una funcion a la q tu le ejecutaras una funcion tipo
<input id="nombre" onChange="LeeDatos(url,val,tipo,salida);" />
Y q con eso ya me bastara.
Bueno, no parece muy complicado, pero ... la cosa se complica cuando usamos el objeto para devolver XML. Como lo trato sin tener q editar la funcion¿?
Una alternativa seria crear una funcion antes de llamar al js,... alguna idea?
Código PHP:
var COMPLETE 4;
var LOADING 1;
/**************************************************************
Funcion Objetus de maborak
http://69.56.196.226/~maborak/leimnud/index.php?
**************************************************************/
function objetus() {
try {
objetus = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
objetus= new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
objetus= false;
}
}
if (!objetus && typeof XMLHttpRequest!='undefined') {
objetus = new XMLHttpRequest();
}
return objetus
}
function LeeDatos(url,val,tipo,salida)
{
var result = "";
_objetus=objetus() //crear objeto
_values_send= val //variables
_URL_= url+"?" //URL
if ( tipo == 'post') // Pasamos las variables por POST
{
_objetus.open("POST",_URL_,true); //abrir procesador
_objetus.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); //cabeceras POST
_objetus.send('&'+_values_send); //enviar variables
}
else if (tipo == 'get') // Pasamos las variables por GET
_objetus.open("GET",_URL_+"&"+_values_send,true); //abrir procesador
_objetus.onreadystatechange=function() { //funcion controlador
if (_objetus.readyState==COMPLETE) //control de estados del proceso
{
if(_objetus.status==200)//si se da un status 200 (TERMINADO CON EXITO)
{
if (salida == 'XML') // Si el tipo es XML
result = _objetus.responseXML;
else
result = _objetus.responseText; // Si el tipo no es XML
}
}
}
_objetus.send(null); //envío nulo de variables
return result;
}