-
Cómo construir un sitio web con Ajax
-
AJAX (JavaScript asíncrono y XML) se hizo popular entre Google Suggest en 2005, cuando Google introdujo una forma innovadora de buscar en la Web: escriba una palabra en el cuadro de búsqueda de Google y una lista de sugerencias se crea. Este ejemplo sencillo pero potente es una de muchas implementaciones de AJAX en la web hoy en día. mapas pestañas Facebook, YouTube, Gmail y Google son otros ejemplos de cómo se puede utilizar AJAX para actualizar partes de una página web sin necesidad de volver a cargar la página entera.Instrucciones
AJAX básica
1 Abra su preferido HTML o editor de texto. Bloc de notas será suficiente.
2 Escriba los elementos esenciales de un documento HTML:
<Html>
<Head>
</ Head>
<Body>
</ Body>
</ Html>
3 Incluir elementos que han de cambiarse AJAX entre las etiquetas <body>. Añadir un botón, por ejemplo, para llamar a la función "loadXMLDoc ()" cuando se hace clic. Añadir una etiqueta div (con el selector id "changeDiv", por ejemplo) para definir el texto para cambiar con AJAX.
<Body>
<Div id = "changedDiv"> <p> Cambiar texto con AJAX </ p> <div>
<Botón de tipo "botón" = onclick = "loadXMLDoc ()"> Haga clic para cambiar el contenido </ botón>
</ Body>
"LoadXMLDoc ()" Función
4 Incluir el "loadXMLDoc ()" función dentro de una etiqueta <script> en la sección <head> del documento HTML. La función le permitirá que incluye un script AXAJ.
<Head>
<Script type = "text / javascript">
función loadXMLDoc ()
{
.... (Script de AJAX se ve aquí)
}
</ Script>
</ Head>
5 Añadir la escritura de AJAX para la función "loadXMLDoc ()". Agregue el objeto XMLHttpRequest (apoyado por los principales navegadores modernos), y el objeto ActiveX (necesario para las versiones de Internet Explorer 5 y 6) que permite secuencias de comandos para permitir que los datos se presentarán a o cargarse desde un servidor. Por ejemplo,
si (window.XMLHttpRequest)
{// Para IE7 +, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest ();
}
más
{// Para IE6, IE5
xmlhttp = new ActiveXObject ( "Microsoft.XMLHTTP");
}
6 Enviar una petición a un servidor mediante el método open (), añadido al final de la función loadXMLDoc (). El formato genérico para el método abierto es la siguiente:
abierta (método, URL, asíncrono)
7 Reemplazar el "método" genérico en el método abierto (método, URL, asíncrono) con GET o POST. GET se debe utilizar la mayor parte del tiempo, ya que es más simple y más rápido que las solicitudes POST. Sin embargo, se debe utilizar la POST cuando se actualiza un archivo o base de datos en el servidor, el envío de grandes cantidades de datos o el envío de la entrada del usuario al servidor (POST es más seguro y robusto que GET y no tiene limitaciones en el tamaño). El método open () debe tener el siguiente aspecto:
xmlhttp.open ( "GET", url, asíncrono) o
xmlhttp.open ( "POST", url, asíncrono)
8 Sustituir el genérico "url" en el método abierto (método, URL, asíncrono) con la ubicación del archivo en el servidor. Si va a sustituir el texto "cambiar el texto con AJAX" con "ajax_document.txt," debe incluir "ajax_document.txt" (cualquier archivo puede ser utilizado, incluyendo .txt, .xml o .asp o .php para realizar acciones en el servidor antes de devolver una respuesta). El ejemplo debería tener este aspecto:
xmlhttp.open ( "GET", "ajax_document.txt", asíncrono)
9 Sustituir el genérico "asíncrono" por "true" para las peticiones asíncronas o "falso" para solicitudes síncronas. Se recomienda el uso de "verdad", ya que esto permitirá que el JavaScript para ejecutar incluso si el servidor está ocupado o lento sin causar que la aplicación deje. Esto ilustra la utilidad de AJAX. El método abierto ahora debería tener este aspecto:
xmlhttp.open ( "GET", "ajax_document.txt", "verdadero")
10 Especificar la función que se ejecutará cuando la respuesta está lista (sólo se aplica cuando se utiliza asnyc = true). Esto se debe añadir por encima del método xmlhttp.open ():
xmlhttp.onreadystatechange = function ()
{
si (xmlhttp.readyState == == 4 && xmlhttp.status 200)
{
document.getElementById ( "exampleDiv") innerHTML = xmlhttp.responseText.;
}
}
La función se ejecuta cuando cambia el estado de listas de 0 a 4 (0 significa solicitud no se ha inicializado; 1, se establece la conexión con el servidor; 2, la solicitud ha sido recibida; 3, solicitud de procesamiento, y 4, la solicitud terminada y la respuesta está listo) . El estado será de 200 a menos que no se encuentra la página (cuando el estado = 404).
11 Incluir el método send () para enviar la solicitud fuera al servidor. Incluir esta por debajo del método open ().
xmlhttp.send ()
Todo el código debe parecerse a esto:
<Html>
<Head>
<Script type = "text / javascript">
función loadXMLDoc ()
{
si (window.XMLHttpRequest)
{// Para IE7 +, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest ();
}
más
{// Para IE6, IE5
xmlhttp = new ActiveXObject ( "Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function ()
{
si (xmlhttp.readyState == == 4 && xmlhttp.status 200)
{
document.getElementById ( "changedDiv") innerHTML = xmlhttp.responseText.;
}
}
xmlhttp.open ( "GET", "ajax_info.txt", true);
xmlhttp.send ();
}
</ Script>
</ Head>
<Body>
<Div id = "changedDiv"> <h2> Cambiar este texto con AJAX </ h2> </ div>
<Botón de tipo "botón" = onclick = "loadXMLDoc ()"> Haga clic para cambiar el contenido </ botón>
</ Body>
</ Html>