AJAX es una técnica que permite crear aplicaciones web interactivas mediante la combinación de JavaScript, HTML, CSS y XML. El objeto XMLHttpRequest permite realizar peticiones asíncronas entre el navegador y el servidor para actualizar partes de la página sin necesidad de recargarla por completo. Cuando el usuario realiza una acción, JavaScript envía una solicitud al servidor en segundo plano y actualiza los datos recibidos sin interferir con otras tareas.
Ajax allows web pages to be updated asynchronously by exchanging data with a web server behind the scenes. This is done through the XMLHttpRequest object in JavaScript. By using Ajax, web pages feel more responsive because users can interact with the page while data is being loaded in the background without interfering with the display and behavior of the existing page.
FTP es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP/IP basado en la arquitectura cliente-servidor. Permite que un cliente se conecte a un servidor FTP para descargar o subir archivos independientemente del sistema operativo. El servidor FTP ofrece este servicio a través de los puertos 20 y 21 y puede estar conectado a Internet u otras redes.
Back to the Basics - 1 - Introduction to Web DevelopmentClint LaForest
This document outlines an introductory web development course that will cover important concepts, terminology, and tools over eight sessions. The first session provides an overview and introduces fundamental terms like servers, users, GET and POST requests, and content delivery networks. It also discusses concepts such as optimizing for speed and responsiveness. Testing tools like Firebug and load testing interfaces are presented. The goal is to refresh skills and level knowledge for all participants in the course.
This document provides an introduction to XML. It discusses what XML is, its advantages over binary formats, and some common XML languages such as XHTML, SVG, and MathML. It also covers XML rules for documents to be well-formed and valid, and provides examples of XML code.
An adapter in Android acts as a bridge between an AdapterView and the underlying data for that view. The adapter provides access to the data items and is responsible for creating a view for each item. There are two main types of adapter views: ListView and Spinner. An AdapterView handles filling its layout with data through an adapter and handling user selections by setting an OnItemClickListener. Developers can use a ListActivity, which simplifies working with lists by automatically creating a ListView, or extend Activity and manually create the ListView.
The document provides an overview of JavaScript, covering what it is, its basics, functions, objects, prototypes, scope, asynchronous JavaScript, JSON, debugging tools, performance, events, error handling, and the future of JavaScript. It discusses that JavaScript is an object-oriented scripting language used in web pages that is not tied to specific browsers but makes use of the DOM, BOM, and ECMAScript standards. It also summarizes some of JavaScript's core features like functions, objects, prototypes, and more.
This document discusses XML namespaces and how they allow elements and attributes from different sources to be combined without naming conflicts. A namespace is a set of unique names identified by a URI. The namespace is declared using the xmlns attribute and a prefix, and elements in that namespace are then identified using the prefix. Namespaces allow documents to be combined, reusable code modules to be invoked, and browsers to handle multiple sources of documents. Local and multiple namespaces are also described.
Ajax allows web pages to be updated asynchronously by exchanging data with a web server behind the scenes. This is done through the XMLHttpRequest object in JavaScript. By using Ajax, web pages feel more responsive because users can interact with the page while data is being loaded in the background without interfering with the display and behavior of the existing page.
FTP es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP/IP basado en la arquitectura cliente-servidor. Permite que un cliente se conecte a un servidor FTP para descargar o subir archivos independientemente del sistema operativo. El servidor FTP ofrece este servicio a través de los puertos 20 y 21 y puede estar conectado a Internet u otras redes.
Back to the Basics - 1 - Introduction to Web DevelopmentClint LaForest
This document outlines an introductory web development course that will cover important concepts, terminology, and tools over eight sessions. The first session provides an overview and introduces fundamental terms like servers, users, GET and POST requests, and content delivery networks. It also discusses concepts such as optimizing for speed and responsiveness. Testing tools like Firebug and load testing interfaces are presented. The goal is to refresh skills and level knowledge for all participants in the course.
This document provides an introduction to XML. It discusses what XML is, its advantages over binary formats, and some common XML languages such as XHTML, SVG, and MathML. It also covers XML rules for documents to be well-formed and valid, and provides examples of XML code.
An adapter in Android acts as a bridge between an AdapterView and the underlying data for that view. The adapter provides access to the data items and is responsible for creating a view for each item. There are two main types of adapter views: ListView and Spinner. An AdapterView handles filling its layout with data through an adapter and handling user selections by setting an OnItemClickListener. Developers can use a ListActivity, which simplifies working with lists by automatically creating a ListView, or extend Activity and manually create the ListView.
The document provides an overview of JavaScript, covering what it is, its basics, functions, objects, prototypes, scope, asynchronous JavaScript, JSON, debugging tools, performance, events, error handling, and the future of JavaScript. It discusses that JavaScript is an object-oriented scripting language used in web pages that is not tied to specific browsers but makes use of the DOM, BOM, and ECMAScript standards. It also summarizes some of JavaScript's core features like functions, objects, prototypes, and more.
This document discusses XML namespaces and how they allow elements and attributes from different sources to be combined without naming conflicts. A namespace is a set of unique names identified by a URI. The namespace is declared using the xmlns attribute and a prefix, and elements in that namespace are then identified using the prefix. Namespaces allow documents to be combined, reusable code modules to be invoked, and browsers to handle multiple sources of documents. Local and multiple namespaces are also described.
https://www.youtube.com/watch?v=lKrbeJ7-J98
HTTP messages are how data is exchanged between a server and a client. There are two types of messages: requests sent by the client to trigger an action on the server, and responses, the answer from the server.
Este documento proporciona una introducción al DOM (Document Object Model) o Modelo de Objetos de Documento. Explica que el DOM transforma documentos XML en una jerarquía de nodos que representan el contenido y estructura del documento, y proporciona funciones para recorrer y manipular estos nodos en JavaScript.
There are several ways to create an array in JavaScript: 1) Using square brackets to declare an empty array, 2) Declaring an array with a set of elements inside brackets, 3) Using the Array constructor to create an empty array or an array with elements, 4) Using the Array constructor to specify the length of an empty array. Arrays can contain elements of different types and the Array.isArray() function can verify if an object is an array.
This document presents information on the MERN stack and how it can be used to build a Twitter clone application. It defines each component of the MERN stack: MongoDB for the database, ExpressJS for the backend framework, ReactJS for the frontend framework, and NodeJS as the runtime environment. It explains that MongoDB is a flexible NoSQL database, ExpressJS simplifies backend coding in NodeJS, ReactJS allows building user interfaces with JavaScript, and NodeJS enables running JavaScript on the server. The document outlines the main benefits of using the MERN stack, such as having a single coding language across front- and backend and the ability to build dynamic web apps quickly. It concludes by describing how to start the server and client for
PHP is a server-side scripting language used to build dynamic web applications. It allows developers to add interactivity to websites. Some key points:
- PHP scripts are executed on the server-side and allow generation of dynamic web page content.
- It supports many databases and is compatible with popular web servers like Apache and IIS.
- Basic PHP syntax involves opening and closing <?php ?> tags to embed PHP code in HTML documents.
- Variables, conditional statements, loops and functions allow building complex scripts.
- PHP can retrieve and process form data submitted from HTML forms.
Introduction to web programming with JavaScriptT11 Sessions
This document provides an overview of web programming with JavaScript. It discusses topics like:
- HTML and CSS which are used to structure and style web pages
- How browsers interpret HTML, CSS, and JavaScript to display web pages
- What backend and frontend development involve
- Common JavaScript concepts like variables, operators, functions, and events
- Tools that can be used for web development like text editors, browsers, and version control software
- Resources for learning more about JavaScript and web programming
Objects in JavaScript can be created using object literals, the new keyword, or Object.create(). Objects are collections of properties and methods that are mutable and manipulated by reference. Arrays are objects that represent ordered collections of values of any type and are created using array literals or the Array constructor. Common array methods include concat, join, pop, push, reverse, and sort. The Math object provides common mathematical functions like pow, round, ceil, floor, random, and trigonometric functions.
DHTML is not a language but a term that describes making dynamic and interactive web pages by combining HTML, JavaScript, CSS, and the HTML DOM. Events are user actions like mouse clicks or keyboard presses. Event handlers catch these events and execute code in response. There are different types of events for windows, mouse, keyboard, and forms. Events can be used with functions to trigger dynamic behaviors - for example, displaying an alert on the mouseover event or changing text on a click. Buttons and other elements can trigger functions through events to create interactive experiences.
Ajax allows web pages to asynchronously update parts of a page by exchanging data with a web server behind the scenes without reloading the entire page. It uses a combination of technologies like HTML/XHTML, CSS, DOM, XML, JavaScript, and the XMLHttpRequest object. This allows faster and more interactive web applications by reducing the amount of data sent and received.
This document outlines a presentation on jQuery fundamentals. The presentation introduces jQuery as a lightweight JavaScript library for DOM manipulation, event handling, Ajax, and animation. It covers jQuery syntax, selectors, DOM traversal and manipulation methods. It also discusses jQuery's event system, Ajax support, and plugins. The presentation includes demos of common jQuery tasks to demonstrate its usage and capabilities.
SQLite is a lightweight database that can be used to persist data between sessions of an Android app. The SQLiteOpenHelper class manages database creation and upgrading, and provides methods like onCreate() and onUpgrade() to define how the database schema is set up. Queries can be performed on the database using the query() method of the SQLiteDatabase class to retrieve data as a Cursor object.
The document summarizes various browser objects including the window, form, history, and date objects. The window object represents a browser window and has properties like closed, status, and location. It can be used to open new windows. The form object takes attributes like name, method, and action. The history object represents the browser history and has properties like next, previous, and current. The date object handles date and time values and has methods like getDate(), getMonth(), and setHours().
This document provides an introduction to JavaScript, covering basic concepts like data types, variables, operators, conditionals, loops, functions, arrays, and objects. It explains that JavaScript is an interpreted language that allows dynamic and interactive functionality on websites. Key points are demonstrated through examples, like using alert to output "Hello World" and basic math operations with variables.
JavaScript is a client-side scripting language that can be inserted into HTML pages to make them interactive. It allows dynamic validation of forms, changing HTML element properties like visibility, and reacting to user events like clicks or form submissions. The Document Object Model (DOM) represents an HTML or XML document as a tree structure, allowing JavaScript to programmatically access and modify the content, structure, and styling of the document. Common built-in JavaScript objects include String, Date, Array, Math, and Boolean, which provide properties and methods for manipulating text, dates, lists of values, numbers, and true/false values.
This document discusses Django templates and summarizes key concepts:
1. Templates can inherit from other templates using {% extends %} and {% block %} tags to define content blocks that child templates can fill;
2. Common blocks are title, content, and extra CSS/JS;
3. Templates can include other partial templates with {% include %} and organize code into reusable parts;
4. Comments can be added with {# single-line #} or {% comment %}multiline{% endcomment %};
5. Filters can modify variables displayed in templates, such as upper, lower, truncate, and naturaltime from django.contrib.humanize.
This document provides an overview of JavaScript basics including variables, data types, operators, conditional statements, loops, functions, arrays, and error handling. It explains JavaScript syntax, how to include JavaScript code in HTML pages, and commonly used statements like if/else, switch case, while and for loops. It also covers JavaScript functions, returning values from functions, and printing pages. The document describes JavaScript strings and array objects, and their associated methods. Finally, it discusses different types of errors in JavaScript like syntax errors, runtime errors, and logical errors.
This document provides an 18 chapter tutorial on CSS (Cascading Style Sheets). It begins with introductory chapters on CSS syntax, classes, IDs, divisions, spans, margins, padding, and text properties. Later chapters cover font properties, anchors, links, backgrounds, borders, lists, positioning, and pseudo elements. Each chapter provides examples and explanations of the CSS concepts and properties covered. The document was created by Vijay Kumar Sharma and includes their contact information. It serves as a comprehensive guide to learning the fundamentals of CSS.
This document discusses various PHP functions categorized into different groups like:
- Date Functions: date, getdate, setdate, Checkdate, time, mktime
- String Functions: strtolower, strtoupper, strlen, trim, substr, strcmp etc.
- Math Functions: abs, ceil, floor, round, pow, sqrt, rand
- User Defined Functions: functions with arguments, default arguments, returning values
- File Handling Functions: fopen, fread, fwrite, fclose to handle files
- Miscellaneous Functions: define, constant, include, require, header to define constants, include files etc.
Este documento describe Javascript y AJAX. Explica que Javascript es un lenguaje de scripts multiplataforma que se ejecuta en el navegador y fue creado por Brendan Eich en Netscape para control dinámico. AJAX es un modelo de desarrollo web que usa una combinación de XML, Javascript y CSS para actualizar páginas sin recargar mediante comunicación asíncrona entre el cliente y el servidor, mejorando la experiencia del usuario. También menciona algunas aplicaciones comunes de Javascript como validar formularios y mostrar alertas.
El documento describe el HTML dinámico (DHTML), que permite crear sitios web interactivos utilizando HTML, CSS, JavaScript y DOM. El DHTML permite que las páginas interactúen con el usuario modificando dinámicamente el contenido después de cargarse, a diferencia de las páginas dinámicas generadas individualmente para cada usuario.
https://www.youtube.com/watch?v=lKrbeJ7-J98
HTTP messages are how data is exchanged between a server and a client. There are two types of messages: requests sent by the client to trigger an action on the server, and responses, the answer from the server.
Este documento proporciona una introducción al DOM (Document Object Model) o Modelo de Objetos de Documento. Explica que el DOM transforma documentos XML en una jerarquía de nodos que representan el contenido y estructura del documento, y proporciona funciones para recorrer y manipular estos nodos en JavaScript.
There are several ways to create an array in JavaScript: 1) Using square brackets to declare an empty array, 2) Declaring an array with a set of elements inside brackets, 3) Using the Array constructor to create an empty array or an array with elements, 4) Using the Array constructor to specify the length of an empty array. Arrays can contain elements of different types and the Array.isArray() function can verify if an object is an array.
This document presents information on the MERN stack and how it can be used to build a Twitter clone application. It defines each component of the MERN stack: MongoDB for the database, ExpressJS for the backend framework, ReactJS for the frontend framework, and NodeJS as the runtime environment. It explains that MongoDB is a flexible NoSQL database, ExpressJS simplifies backend coding in NodeJS, ReactJS allows building user interfaces with JavaScript, and NodeJS enables running JavaScript on the server. The document outlines the main benefits of using the MERN stack, such as having a single coding language across front- and backend and the ability to build dynamic web apps quickly. It concludes by describing how to start the server and client for
PHP is a server-side scripting language used to build dynamic web applications. It allows developers to add interactivity to websites. Some key points:
- PHP scripts are executed on the server-side and allow generation of dynamic web page content.
- It supports many databases and is compatible with popular web servers like Apache and IIS.
- Basic PHP syntax involves opening and closing <?php ?> tags to embed PHP code in HTML documents.
- Variables, conditional statements, loops and functions allow building complex scripts.
- PHP can retrieve and process form data submitted from HTML forms.
Introduction to web programming with JavaScriptT11 Sessions
This document provides an overview of web programming with JavaScript. It discusses topics like:
- HTML and CSS which are used to structure and style web pages
- How browsers interpret HTML, CSS, and JavaScript to display web pages
- What backend and frontend development involve
- Common JavaScript concepts like variables, operators, functions, and events
- Tools that can be used for web development like text editors, browsers, and version control software
- Resources for learning more about JavaScript and web programming
Objects in JavaScript can be created using object literals, the new keyword, or Object.create(). Objects are collections of properties and methods that are mutable and manipulated by reference. Arrays are objects that represent ordered collections of values of any type and are created using array literals or the Array constructor. Common array methods include concat, join, pop, push, reverse, and sort. The Math object provides common mathematical functions like pow, round, ceil, floor, random, and trigonometric functions.
DHTML is not a language but a term that describes making dynamic and interactive web pages by combining HTML, JavaScript, CSS, and the HTML DOM. Events are user actions like mouse clicks or keyboard presses. Event handlers catch these events and execute code in response. There are different types of events for windows, mouse, keyboard, and forms. Events can be used with functions to trigger dynamic behaviors - for example, displaying an alert on the mouseover event or changing text on a click. Buttons and other elements can trigger functions through events to create interactive experiences.
Ajax allows web pages to asynchronously update parts of a page by exchanging data with a web server behind the scenes without reloading the entire page. It uses a combination of technologies like HTML/XHTML, CSS, DOM, XML, JavaScript, and the XMLHttpRequest object. This allows faster and more interactive web applications by reducing the amount of data sent and received.
This document outlines a presentation on jQuery fundamentals. The presentation introduces jQuery as a lightweight JavaScript library for DOM manipulation, event handling, Ajax, and animation. It covers jQuery syntax, selectors, DOM traversal and manipulation methods. It also discusses jQuery's event system, Ajax support, and plugins. The presentation includes demos of common jQuery tasks to demonstrate its usage and capabilities.
SQLite is a lightweight database that can be used to persist data between sessions of an Android app. The SQLiteOpenHelper class manages database creation and upgrading, and provides methods like onCreate() and onUpgrade() to define how the database schema is set up. Queries can be performed on the database using the query() method of the SQLiteDatabase class to retrieve data as a Cursor object.
The document summarizes various browser objects including the window, form, history, and date objects. The window object represents a browser window and has properties like closed, status, and location. It can be used to open new windows. The form object takes attributes like name, method, and action. The history object represents the browser history and has properties like next, previous, and current. The date object handles date and time values and has methods like getDate(), getMonth(), and setHours().
This document provides an introduction to JavaScript, covering basic concepts like data types, variables, operators, conditionals, loops, functions, arrays, and objects. It explains that JavaScript is an interpreted language that allows dynamic and interactive functionality on websites. Key points are demonstrated through examples, like using alert to output "Hello World" and basic math operations with variables.
JavaScript is a client-side scripting language that can be inserted into HTML pages to make them interactive. It allows dynamic validation of forms, changing HTML element properties like visibility, and reacting to user events like clicks or form submissions. The Document Object Model (DOM) represents an HTML or XML document as a tree structure, allowing JavaScript to programmatically access and modify the content, structure, and styling of the document. Common built-in JavaScript objects include String, Date, Array, Math, and Boolean, which provide properties and methods for manipulating text, dates, lists of values, numbers, and true/false values.
This document discusses Django templates and summarizes key concepts:
1. Templates can inherit from other templates using {% extends %} and {% block %} tags to define content blocks that child templates can fill;
2. Common blocks are title, content, and extra CSS/JS;
3. Templates can include other partial templates with {% include %} and organize code into reusable parts;
4. Comments can be added with {# single-line #} or {% comment %}multiline{% endcomment %};
5. Filters can modify variables displayed in templates, such as upper, lower, truncate, and naturaltime from django.contrib.humanize.
This document provides an overview of JavaScript basics including variables, data types, operators, conditional statements, loops, functions, arrays, and error handling. It explains JavaScript syntax, how to include JavaScript code in HTML pages, and commonly used statements like if/else, switch case, while and for loops. It also covers JavaScript functions, returning values from functions, and printing pages. The document describes JavaScript strings and array objects, and their associated methods. Finally, it discusses different types of errors in JavaScript like syntax errors, runtime errors, and logical errors.
This document provides an 18 chapter tutorial on CSS (Cascading Style Sheets). It begins with introductory chapters on CSS syntax, classes, IDs, divisions, spans, margins, padding, and text properties. Later chapters cover font properties, anchors, links, backgrounds, borders, lists, positioning, and pseudo elements. Each chapter provides examples and explanations of the CSS concepts and properties covered. The document was created by Vijay Kumar Sharma and includes their contact information. It serves as a comprehensive guide to learning the fundamentals of CSS.
This document discusses various PHP functions categorized into different groups like:
- Date Functions: date, getdate, setdate, Checkdate, time, mktime
- String Functions: strtolower, strtoupper, strlen, trim, substr, strcmp etc.
- Math Functions: abs, ceil, floor, round, pow, sqrt, rand
- User Defined Functions: functions with arguments, default arguments, returning values
- File Handling Functions: fopen, fread, fwrite, fclose to handle files
- Miscellaneous Functions: define, constant, include, require, header to define constants, include files etc.
Este documento describe Javascript y AJAX. Explica que Javascript es un lenguaje de scripts multiplataforma que se ejecuta en el navegador y fue creado por Brendan Eich en Netscape para control dinámico. AJAX es un modelo de desarrollo web que usa una combinación de XML, Javascript y CSS para actualizar páginas sin recargar mediante comunicación asíncrona entre el cliente y el servidor, mejorando la experiencia del usuario. También menciona algunas aplicaciones comunes de Javascript como validar formularios y mostrar alertas.
El documento describe el HTML dinámico (DHTML), que permite crear sitios web interactivos utilizando HTML, CSS, JavaScript y DOM. El DHTML permite que las páginas interactúen con el usuario modificando dinámicamente el contenido después de cargarse, a diferencia de las páginas dinámicas generadas individualmente para cada usuario.
AJAX permite actualizar partes de una página web con información del servidor sin necesidad de recargar la página completa, lo que mejora la interactividad. Usa tecnologías existentes como JavaScript, XML y HTTP para comunicarse asincrónicamente con el servidor. El objeto XMLHttpRequest es fundamental para esta comunicación y permite enviar y recibir datos, principalmente en formato XML.
7. cambios en el software y mejora de procesossilviamap64
El documento proporciona una introducción al mantenimiento y mejora de procesos de software. Explica diferentes estrategias para realizar cambios en el software como el mantenimiento, la transformación arquitectónica y la reingeniería. También discute conceptos como la calidad del proceso y producto, el modelo de madurez CMM del SEI, y factores que influyen en los costos de mantenimiento como la estabilidad del equipo y la edad del programa.
jQuery es un framework JavaScript ligero y sencillo de usar que permite modificar el contenido y apariencia de páginas web, manejar eventos y realizar animaciones e interacciones Ajax. jQuery utiliza selectores como en CSS para acceder y modificar elementos del DOM, y ofrece funciones para agregar y remover atributos, clases, estilos, y manejar eventos.
El documento presenta definiciones de calidad propuestas por expertos como Deming e Ishikawa, que enfatizan la importancia de producir productos económicos, útiles y satisfactorios para el consumidor. También discute la importancia de realizar cambios técnicos para mejorar la calidad, el rendimiento y la eficiencia. Además, destaca que muchos clientes insatisfechos no se quejan y que es importante recuperar su confianza.
La calidad del software se refiere al grado en que un sistema satisface las necesidades y expectativas de los usuarios. Se define como el grado en que un producto cumple los requisitos especificados y las necesidades del cliente. La calidad depende de factores como el tamaño del proyecto, los métodos utilizados y la estructura organizativa. El modelo ISO 9126 establece que la calidad del proceso mejora la calidad del producto y esta mejora la calidad de uso para los usuarios.
Este documento introduce jQuery, una biblioteca JavaScript que facilita la manipulación del DOM y la programación de efectos. Explica qué es jQuery, cómo descargarla e incluirla en un proyecto, y ofrece ejemplos básicos de selección de nodos, manipulación del contenido, encadenamiento de acciones, y uso de plugins como jBox para mostrar ventanas emergentes.
jQuery es una biblioteca JavaScript que facilita la manipulación del DOM, AJAX, interfaz de usuario y validación de formularios. Está basada en objetos y selectores CSS que permiten seleccionar y modificar elementos HTML fácilmente. Incluye funciones para animaciones, efectos y peticiones asíncronas que simplifican el desarrollo front-end.
La ingeniería de software concierne a las teorías, métodos y herramientas para el desarrollo, administración y evolución de productos de software. Existen varios modelos de procesos de software como el modelo de cascada, modelo evolutivo y modelo de espiral. Los ingenieros de software deben considerar aspectos técnicos así como también responsabilidades éticas, sociales y profesionales durante el desarrollo de sistemas.
Herramientas y entornos de implementacion de softwareMiguel Sanchez
Este documento describe las herramientas CASE (Computer-Aided Software Engineering), que ayudan en el desarrollo y mantenimiento de software reduciendo los costos. Explica los objetivos, componentes y ejemplos de herramientas CASE, así como los beneficios y desventajas. También cubre temas como la prueba de software, validación y verificación de software orientado a objetos y aplicaciones web, y la evolución de sistemas heredados.
Este documento explica jQuery, un framework JavaScript popular que facilita el desarrollo de aplicaciones web. jQuery simplifica la manipulación del DOM y la interacción con eventos mediante selectores y métodos simples. También permite realizar peticiones AJAX para cargar datos de forma asíncrona desde el servidor.
Este documento describe varios lenguajes de programación del lado del cliente para el desarrollo web. Explica que HTML se usa para estructurar el contenido, JavaScript y applets de Java permiten interactividad, y CSS controla el diseño y la presentación. También cubre Visual Basic Script y DHTML.
jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.
Este documento define la calidad como conformidad a especificaciones, satisfacción del cliente, valor en relación al precio y excelencia. Luego describe las dimensiones de la calidad como confiabilidad, comprensión, capacidad de respuesta, cortesía, competencia, accesibilidad, credibilidad, tangibilidad, empatía y responsabilidad. Finalmente incluye dos referencias bibliográficas.
El documento habla sobre conceptos de calidad de software. Explica que la calidad de software implica un proceso efectivo que crea un producto útil y de valor. Luego discute diferentes dimensiones y factores de calidad, así como estrategias para lograr calidad como el uso de métodos de ingeniería de software, pruebas y aseguramiento de calidad.
El documento describe los diferentes niveles de diseño de software, incluyendo el diseño de arquitectura, el diseño de alto nivel y el diseño detallado. También explica el diseño estructurado de sistemas y cómo se utilizan los diagramas de estructura para modelar la estructura de control de un programa a través de un árbol de invocación de módulos.
Este documento trata sobre el tema de la calidad. Explica que la calidad se refiere a la adecuación al uso, la satisfacción del cliente y el cumplimiento de especificaciones. También habla sobre la importancia de la mejora continua de la calidad y el compromiso de toda la organización con este objetivo. Por último, resume algunas herramientas clave para la gestión de la calidad como los círculos de calidad y el sistema de las 5S.
El documento habla sobre varios estándares y modelos de calidad de software como ISO 9000, ISO 9001, ISO 9002, ISO 9003, ISO/IEC 12207, ISO/IEC 14598, ISO/IEC 15504 e ISO/IEC 25000. Define la calidad de software y describe cada estándar y modelo, incluyendo sus objetivos y cómo especifican procesos y métricas para asegurar la calidad.
AJAX permite actualizar partes de una página web con información del servidor sin necesidad de recargar la página completa, lo que mejora la interactividad. Usa tecnologías existentes como HTML, CSS, JavaScript y XML. El objeto XMLHttpRequest es fundamental para la comunicación asíncrona con el servidor y permite enviar y recibir datos, principalmente en formato XML.
AJAX permite actualizar partes de una página web con información del servidor sin necesidad de recargar la página completa, lo que mejora la interactividad. Usa tecnologías existentes como JavaScript, XML y HTTP para comunicarse de forma asíncrona con el servidor. El objeto XMLHttpRequest es fundamental para esta comunicación y permite enviar y recibir datos, principalmente en formato XML.
AJAX a cuerda
Lo básico sobre AJAX y su funcionamientoRoberto Allende
El documento proporciona una introducción a AJAX y describe sus principales tecnologías subyacentes como XML, DOM, CSS, XMLHttpRequest y JavaScript. Explica cómo AJAX permite la comunicación asíncrona entre el navegador y el servidor sin recargar la página, lo que hace posible aplicaciones web dinámicas e interactivas. También muestra cómo construir una clase AJAX en JavaScript para realizar solicitudes y procesar las respuestas de forma asíncrona.
Este documento describe los modelos clásico y moderno de desarrollo web, así como las tecnologías Ajax y JQuery. Explica que el modelo clásico es síncrono mientras que el moderno es asíncrono. Detalla cómo Ajax usa XMLHttpRequest para comunicación asíncrona con el servidor y pasar datos. Finalmente, introduce JQuery y cómo simplifica el desarrollo web mediante sintaxis sencilla para seleccionar y manipular elementos HTML.
Este documento presenta un equipo de AJAX compuesto por 3 integrantes y proporciona una introducción a AJAX, describiendo que es una combinación de varias tecnologías como JavaScript y XML. Explica las principales tecnologías subyacentes como DOM, XML y XMLHttpRequest y cómo estas se unen bajo el concepto de AJAX para mejorar la interacción del usuario.
El documento explica qué es AJAX, describiendo que permite actualizar partes de una página web sin recargar la página completa mediante el objeto XMLHttpRequest. También describe los métodos y propiedades de este objeto como open, send y readyState que permiten realizar peticiones asíncronas al servidor y procesar la respuesta con JavaScript. Finalmente, menciona algunos errores comunes al utilizar AJAX como no informar al usuario sobre el estado de la carga o no tener en cuenta que la interacción es asíncrona.
Este documento trata sobre AJAX y provee información sobre qué es AJAX, sus características fundamentales, ventajas y desventajas. También incluye ejemplos de cómo actualizar parte de una página con información del servidor sin recargar la página completa usando AJAX. Explica el objeto XMLHttpRequest y cómo crearlo y usarlo para comunicarse con el servidor de forma asíncrona.
El documento introduce el uso de AJAX y la comunicación asíncrona. Explica los componentes clave de AJAX como HTML, CSS, DOM, XML, JSON y XMLHttpRequest. Describe las ventajas de AJAX sobre las solicitudes síncronas tradicionales y los requisitos técnicos. Además, detalla los métodos y propiedades del objeto XMLHttpRequest para realizar peticiones asíncronas al servidor y manejar las respuestas.
Este documento describe cómo trabajar con datos XML en ASP.NET, incluida la lectura y escritura de datos XML, el uso del objeto DataSet y el control de servidor Web XML. Explica conceptos clave como XML, XSLT y cómo sincronizar un DataSet con un XmlDataDocument para transformar datos XML. También incluye demostraciones de cómo cargar y guardar datos XML y aplicar transformaciones XSLT.
1. El documento discute posibles soluciones para implementar un chat por HTTP como Iframe scripting y propone que AJAX es una solución elegante. 2. Explica el esquema de funcionamiento de AJAX donde el navegador realiza peticiones asíncronas al servidor y actualiza el DOM sin recargar la página. 3. Revisa herramientas para desarrollo AJAX como Firebug que permiten debuggear aplicaciones AJAX.
Este documento describe las aplicaciones ricas de Internet (RIA), que combinan características de aplicaciones web y de escritorio para brindar una experiencia enriquecida al usuario. Explica dos tipos de RIA, completas y embebidas, y discute tecnologías como AJAX, XMLHttpRequest y frameworks de desarrollo.
Este documento resume los conceptos básicos de AJAX. Explica que AJAX permite actualizar partes de una página web de forma asincrónica sin recargar la página completa. Describe cómo crear una aplicación AJAX simple utilizando XMLHttpRequest para realizar una petición a un archivo PHP y mostrar la respuesta en la página.
AJAX es una técnica que permite actualizar partes de una página web de forma asíncrona mediante JavaScript y XML. El documento explica qué es AJAX, sus ventajas y desventajas, y provee un ejemplo de cómo implementarlo mediante la creación de objetos XMLHttpRequest para realizar peticiones al servidor y actualizar el contenido sin recargar la página.
Ajax, acrónimo de Asynchronous JavaScript And XML (JavaScript asíncrono y XML), es una técnica de desarrollo web para crear aplicaciones.
Ajax es una tecnología asíncrona, en el sentido de que los datos adicionales se solicitan al servidor y se cargan en segundo plano sin interferir con la visualización ni el comportamiento de la página.
Ajax es una técnica válida para múltiples plataformas y utilizable en muchos sistemas operativos y navegadores dado que está basado en estándares abiertos como JavaScript y Document Object Model
1
(DOM).
Estas aplicaciones se ejecutan en el navegador (cliente) de los usuarios.
Este documento presenta una introducción a Ext JS, incluyendo sus objetivos, temas clave como AJAX, JSON, DOM y programación orientada a objetos en JavaScript. Explica conceptos como el comportamiento de aplicaciones web tradicionales vs. con AJAX, y componentes clave como XMLHttpRequest y marcos AJAX.
El documento describe la introducción de los servlets en 1996 para añadir funcionalidad dinámica a los servidores web. Los servlets se ejecutan dentro de un proceso simple para cada petición, reduciendo la sobrecarga. Una desventaja es que los cambios estáticos en la página requieren recompilar el servlet. Los servlets se escriben usando la API Servlet y el método service() maneja las peticiones y respuestas.
1) El documento presenta información sobre aplicaciones AJAX (JavaScript asíncrono y XML), comparando el comportamiento de aplicaciones de escritorio, web y web + AJAX. 2) Describe conceptos clave como Javascript, XML, JSON y el objeto XMLHttpRequest que permite solicitudes asíncronas al servidor. 3) Explica el flujo típico de una aplicación AJAX, incluyendo respuestas del servidor y marcos como ExtJS.
AJAX es una técnica que combina varias tecnologías como XHTML, CSS, DOM, XML, JavaScript y XMLHttpRequest para crear aplicaciones web dinámicas y más interactivas. Permite actualizar partes de una página web sin recargar la página completa a través de peticiones asíncronas al servidor en segundo plano. Esto mejora la usabilidad y experiencia del usuario al navegar sitios web.
Este documento presenta un taller sobre programación web con Ajax utilizando jQuery. Los objetivos incluyen introducir el acceso y manejo de bases de datos con PHP y MySQL, mostrar cómo conectarse a una base de datos para manipular registros, e implementar tecnología Ajax con JavaScript y jQuery. El documento también define términos como Ajax, jQuery, objeto XMLHttpRequest y describe funciones básicas de PHP para interactuar con bases de datos MySQL.
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaAMADO SALVADOR
Descubra el catálogo completo de buzones BTV, una marca líder en la fabricación de buzones y cajas fuertes para los sectores de ferretería, bricolaje y seguridad. Como distribuidor oficial de BTV, Amado Salvador se enorgullece de presentar esta amplia selección de productos diseñados para satisfacer las necesidades de seguridad y funcionalidad en cualquier entorno.
Descubra una variedad de buzones residenciales, comerciales y corporativos, cada uno construido con los más altos estándares de calidad y durabilidad. Desde modelos clásicos hasta diseños modernos, los buzones BTV ofrecen una combinación perfecta de estilo y resistencia, garantizando la protección de su correspondencia en todo momento.
Amado Salvador, se compromete a ofrecer productos de primera clase respaldados por un servicio excepcional al cliente. Como distribuidor oficial de BTV, entendemos la importancia de la seguridad y la tranquilidad para nuestros clientes. Por eso, trabajamos en colaboración con BTV para brindarle acceso a los mejores productos del mercado.
Explore el catálogo de buzones ahora y encuentre la solución perfecta para sus necesidades de correo y seguridad. Confíe en Amado Salvador y BTV para proporcionarle buzones de calidad excepcional que cumplan y superen sus expectativas.
2. Que es Ajax AJAX (Asynchronous JavaScript And XML) es una técnica de desarrollo Web para crear aplicaciones interactivas mediante la combinación de tres tecnologías ya existentes.
3. Que es Ajax JavaScript - Para manejar el objeto XMLHttpRequest y DOM tratar para los datos recibidos. HTML - Distribuye en la ventana del navegador los elementos de la aplicación y la información recibida por el servidor CSS - Define el aspecto de cada elemento y dato de la aplicación XML - Es el formato de los datos transmitidos del servidor al cliente (navegador) y que posteriormente serán mostrados. Lenguaje de servidor - Genera la información útil en XML y la envía al navegador.
4. Funcionamiento El usuario accede a la aplicación que es enviada por el servidor en formato HTML, JavaScript y CSS. Luego el código JavaScript de la aplicación pide al servidor los datos que quiere mostrar y este, ejecuta un código de lado de servidor que envía al navegador los datos en formato XML. Cada vez que el usuario realiza una acción que significa mostrar unos datos, la capa javascript, repite la acción anterior de manera invisible al usuario y muestra los datos deseados.
8. El objeto XMLHttpRequest Es una instancia de una API que nos permite la transferéncia de datos en formato XML desde los script del navegador ( JavaScript, JScrip, VBScript ... ) a los del servidor ( PHP, Perl, ASp, Java ... ) e inversamente.
9. El objeto XMLHttpRequest Métodos y atributos: Atributos: onreadystatechange readyState responseText responseXML Status statusText Métodos: Abort getAllResponseHeaders getResponseHeader Open Send setRequestHeader
10. onreadystatechange Asigna la función que se ejecutará cada vez que readyState cambie de valor. UtilizaciónoXMLHttpRequest.onreadystatechange = fFuncion; oXMLHttpRequest - Objeto XMLHttpRequest fFuncion - Función a ejecutarFrecuentemente utilizamos onreadystatechange para definir una función para leer los datos recibidos del servidor, en este caso en su interior comprobaríamos que readyState tenga valor 4 y entonces leeremos el valor de responseXML, responseText... Ejemplo: <script language="JavaScript"> // Creamos la función function fFuncion () { // Alertamos el estado de la petición alert ( oXMLHttpRequest.readyState ); } // Definimos la función handler del evento oXMLHttpRequest.onreadystatechange = fFuncion; </script>
11. readyState Devuelve el estado actual del objeto XMLHttpRequest, cada vez que cambia el valor de readyState se lanza la función indicada en onreadystatechange Utilización iEstado = oXMLHttpRequest.readyState; iEstado - Estado actual del objeto 0 - Sin inicializar, siempre será: 1 - Abierto (acaba de llamar open) 2 - Enviado 3 - Recibiendo 4 - A puntooXMLHttpRequest - Objeto XMLHttpRequest La propiedad readyState se utiliza en todas las comunicaciones asíncronas para comprobar que podemos acceder ya a atributos como responseXML y responseText, sólo accesibles en los estados 3 y 4. Ejemplo <script language="JavaScript"> // Creamos la función function fFuncion () { // Si el estado es "A punto" if ( oXMLHttpRequest.readyState == 4) { // Alertamos el texto alert ( oXMLHttpRequest.responseText ); } } // // Definimos la función handler del evento oXMLHttpRequest.onreadystatechange = fFuncion; </script>
12. responseText Devuelve el texto del documento descargado del servidor en una petición con XMLHttpRequest. Utilización sDocumento = oXMLHttpRequest.responseText; sDocumento - Cadena de caracteres con el texto del documento. oXMLHttpRequest - Objeto XMLHttpRequest La propiedad responseText se utiliza para tratar los datos recibidos desde el servidor que no tienen formato XML, podremos acceder a los datos siempre y cuando el estado de la conexión devuelto con readyStatechange sea igual a 3 (recibiendo) o 4 (a punto). Siempre que podamos intentaremos usar responseXML en lugar de responseText y XML para la los datos en lugar de texto plano. Ejemplo: <script language="JavaScript"> // Creamos la función function fFuncion () { // Si el estado es "A punto" if ( oXMLHttpRequest.readyState == 4) { // Alertamos el texto alert ( oXMLHttpRequest.responseText ); } } // Definimos la función handler del evento oXMLHttpRequest.onreadystatechange = fFuncion; </script>
13. responseXML Devuelve una referéncia al cuerpo del documento descargado del servidor en una petición con XMLHttpRequest en formato XML. Utilización oDocumento = oXMLHttpRequest.responseXML; oDocumento - Referéncia al cuerpo del objeto recibido. oXMLHttpRequest - Objeto XMLHttpRequest La propiedad responseXML se utiliza para tratar los datos recibidos en formato XML desde el servidor, podremos acceder a los datos siempre y cuando el estado de la conexión devuelto con readyStatechange sea igual a 4 (a punto). Ejemplo: <script language="JavaScript"> // Creamos la función function fFuncion () { // Si el estado es "A punto" if ( oXMLHttpRequest.readyState == 4) { // Accedemos al documento XML oDocumento = oXMLHttpRequest.responseXML.documentElement; // Alertamos el numeto de item's alert ( oDocumento.getElementsByTagName('item').length ); } } // Definimos la función handler del evento oXMLHttpRequest.onreadystatechange = fFuncion; </script>
14. status Devuelve el código del estado HTTP de la transmisión devuelto por el servidor web. Utilización iEstado = oXMLHttpRequest.status; iEstado - Entero con el código HTTP de estado. oXMLHttpRequest - Objeto XMLHttpRequest La propiedad status e utiliza para comprobar que no ha habido problemas en la comunicación con el servidor, podremos acceder a los datos siempre y cuando el estado de la conexión devuelto con readyStatechange sea igual a 3 (reciviendo) o 4 (a punto). Ejemplo: <script language="JavaScript"> // Comparamos el estado if ( oXMLHttpRequest.status != 200 ) { // Mostramos un mensaje de error alert ( 'Ha sucedido un error con la conexion' ); } </script>
15. statusText Devuelve el texto del estado HTTP de la transmisión devuelto por el servidor web. Utilización sEstado = oXMLHttpRequest.statusText; sEstado -Cadena de caracteres con el texto del estado HTTP. oXMLHttpRequest - Objeto XMLHttpRequest La propiedad statusText no es de uso común, normalmente en su lugar usaremos status, podremos acceder a los datos siempre y cuando el estado de la conexión devuelto con readyStatechange sea igual a 3 (recibiendo) o 4 (a punto). Ejemplo <script language="JavaScript"> // Comparamos el estado alert ( oXMLHttpRequest.statusText ); } </script>
16. abort El método abort detiene todas las conexiones asíncronas abiertas por el objeto XMLHttpRequest y lo reinicializa poniendo a cero su estado (readyState). Utilización oXMLHttpRequest.abort (); oXMLHttpRequest - Objeto XMLHttpRequest Frecuentemente se utiliza abort antes de realizar una nueva petición al servidor a través de un objeto que está realizando o recibiendo otra petición anterior. Ejemplo <!-- Botón --> <input type="button" value="Detener" action="oXMLHttpRequest.abort ();" />
17. getAllResponseHeaders El método getAllResponseHeaders devuelve en una sola cadena de caracteres los encabezados HTTP que se han recibido del servidor en una conexión usando el objeto XMLHttpRequest. Utilización sHeaders = oXMLHttpRequest.getAllResponseHeaders (); sHeaders - Cadena de caracteres con los encabezados. oXMLHttpRequest - Objeto XMLHttpRequest La cadena sHeaders contendrá todos los encabezados enviados por el servidor excepto el de estado ( por ejemplo HTTP/1.1 200 OK), los encabezados serán devueltos separados por la combinación 'salto de linea' + 'retorno de caro'. Ejemplo <script language="JavaScript"> <!-- // creamos el objeto oXMLHttp = new XMLHttpRequest(); // pedimos la página en modo síncrono oXMLHttp.open('get', 'index.htm', false); // enviamos los datos oXMLHttp.send(); // alertamos los encabezados HTTP alert(oXMLHttp.getAllResponseHeaders()); --> </script>
18. getResponseHeader El método getResponseHeader devuelve en una sola cadena de caracteres uno de los encabezados HTTP que se han recibido del servidor en una conexión usando el objeto XMLHttpRequest. Utilización sHeaders = oXMLHttpRequest.getAllResponseHeaders ( sHeaderName ); sHeaders - Cadena de caracteres con los encabezados. oXMLHttpRequest - Objeto XMLHttpRequest sHeaderName - Cadena de caracteres con el nombre del encabezado La cadena sHeaders contendrá todos los encabezados con nombre igual a sHeaderName enviados por el servidor separados por la combinación 'coma' + 'espacio'. Ejemplo <script language="JavaScript"> <!-- // creamos el objeto oXMLHttp = new XMLHttpRequest(); // pedimos la página en modo síncrono oXMLHttp.open('get', 'index.htm', false); // enviamos los datos oXMLHttp.send(); // alertamos los encabezados HTTP alert(oXMLHttp.getResponseHeader('X-Powered-By')); --> </script>
19. open El método open prepara una conexión HTTP a través del objeto XMLHttpRequest ( con un método y una URL especificados ) y inicializa todos los atributos del objeto. Utilización oXMLHttpRequest.open ( sMetodo, sURL [, bSincronia [, sUsuario [, sPwd ] ] ] ); oXMLHttpRequest - Objeto XMLHttpRequest sMetodo - String con el método de conexión ( GET o POST ). sURL - URL para la peticion HTTP bSincronia - Booleano opcional en true para usar modo asíncrono y en false para síncrono. sUsuario - Cadena de caracteres opcional con el nombre de usuario para la autenticación sPwd - Cadena de caracteres opcional con la contraseña del usuario sUsuariopara la autenticación Al llamar a open el atributo readyState a 1, resetea los headers de envío y los devuelve atributos responseText, responseXML, status y statusText a sus valores iniciales Ejemplo <script language="JavaScript"> <!-- // creamos el objeto oXMLHttp = new XMLHttpRequest(); // pedimos la página en modo síncrono oXMLHttp.open('get', 'index.htm', false); // enviamos los datos oXMLHttp.send(); --> </script>
20. send El método send envía la petición con los datos pasados por parámetro como cuerpo de la petición a través del objeto XMLHttpRequest. Utilización oXMLHttpRequest.send ( mData ); oXMLHttpRequest - Objeto XMLHttpRequest oData - Cuerpo de la petición HTTP. El parametro oData puede ser una referéncia al DOM de un documento o una cadena de caracteres. Ejemplo <script language="JavaScript"> <!-- // creamos el objeto oXMLHttp = new XMLHttpRequest(); // pedimos la página en modo síncrono oXMLHttp.open('get', 'index.htm', false); // enviamos los datos oXMLHttp.send(); --> </script>
21. setRequestHeader El método setRequestHeader añade un encabezado HTTP a la petición HTTP a través del objeto XMLHttpRequest. Utilización oXMLHttpRequest.setRequestHeader ( sNombre, sValor); oXMLHttpRequest - Objeto XMLHttpRequest sNombre - Nombre del encabezado HTTP. sValor - Valor del encabezado HTTP. El parametro sNombre deberá no podrá ser Accept-Charset, Accept-Encoding, Content-Length, Expect, Date, Host, Keep-Alive, Referer, TE, Trailer, Transfer-Encoding ni Upgrade, tampoco podrá contener espacios, puntos o saltos de línea. Ejemplo <script language="JavaScript"> <!-- // creamos el objeto oXMLHttp = new XMLHttpRequest(); // añadimos el encabezado oXMLHttp.setRequestHeader('User-Agent', 'AJAX'); // pedimos la página en modo síncrono oXMLHttp.open('get', 'index.htm', false); // enviamos los datos oXMLHttp.send(); --> </script>
22. Creación del objeto XMLHttpRequest El secreto de AJAX es la comunicación sin refresco entre el cliente y el servidor, esto es posible gracias a JavaScript y al objeto XMLHttpRequest. Este objeto, esta disponible para la mayoría de navegadores modernos excepto las versiones 5 y 6 de Internet Explorer, para las cuales tendremos que usar un objeto ActiveX llamado 'Microsoft XMLHT<script TP', por lo tanto , cuando creemos el objeto de comunicación con el servidor deberemos tener en cuenta el navegador con el que trabaja nuestro usuario. Para hacer el código más limpio, crearemos una función para realizar la conexión que usará variables locales, además es recomendable incluir todas las funciones que usaremos en un fichero .js externo e incluirlo en el documento HTML. <script> function AJAXCrearObjeto(){ var obj; if(window.XMLHttpRequest) { // no es IE obj = new XMLHttpRequest(); } else { // Es IE o no tiene el objeto try { obj = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert('El navegador utilizado no está soportado'); } } return obj; } </script> Ahora, llamaremos a la función AJAXCrearObjeto de la siguiente manera para obtener el objeto que utilizaremos más adelante: <script> oXML = AJAXCrearObjeto(); </script>
23.
24. Realizar una petición con AJAX El primer paso para establecer la comunicación con el servidor usando AJAX, es hacer la petición, posteriormente, el servidor nos preparará y devolverá una información que ya veremos más adelante como recibimos, tratamos e incorporamos en nuestra página. Existen dos tipos de petición al servidor, definidas con el método open, la petición síncrona y la asíncrona, pero por definición AJAX utiliza comunicación asíncrona. Realizar la petición al servidor Para realizar la petición al servidor, utilizaremos los métodos open, onreadystatechange y send, que sirven respectivamente para preparar la petición, seleccionar la función de recepción e iniciar la petición. Al método open, hay que pasarle el método de petición (GET) y la URL que se enviará al servidor y mediante la cual, el servidor, creará la respuesta que posteriormente leeremos.
25. Ejemplo <script> // Creamos el objeto oXML = <A&NBSP;HREF=" articulos articulo ?num='323""'>AJAXCrearObjeto(); // Preparamos la petición oXML.open('GET', 'archivo.txt'); // Preparamos la recepción oXML.onreadystatechange = leerDatos; // Realizamos la petición oXML.send(''); </script>
26. Paso de parámetros En la petición AJAX podemos pasar parámetros tanto por POST como por GET a nuestro servidor. Para pasar parámetros por GET ( por URL ) , usaremos una URL con parámetros en la función open independientemente de usar el método GET o POST, por ejemplo: <script> // Creamos la variable parametro parametro = 'Datos pasados por GET'; // Creamos el objeto oXML = <A&NBSP;HREF=" articulos articulo ?num='323""'>AJAXCrearObjeto(); // Preparamos la petición con parametros oXML.open('GET', 'pagina.php?parametro=' + escape(parametro)); // Preparamos la recepción oXML.onreadystatechange = leerDatos; // Realizamos la petición oXML.send(''); </script>
27. Paso de parámetros Para pasarlos por POST, deberemos usar el método POST en la función open y pasar los parámetros desde la función send, veamos un ejemplo: <script> // Creamos la variable parametro parametro = 'Datos pasados por POST'; // Creamos el objeto oXML = <A&NBSP;HREF=" articulos articulo ?num='323""'>AJAXCrearObjeto(); // Preparamos la petición con parametros oXML.open('POST','pagina.php'); // Preparamos la recepción oXML.onreadystatechange = leerDatos; // Realizamos la petición oXML.send( 'parametro=' + escape(parametro)); </script>
28. escape El método escape devuelve la cadena pasada por parámetro con las transformaciones necesarias para ser enviada en una transacción HTTP. Utilización sCodificada = escape ( sDescodificada); sCodificada - Cadena preparada para ser enviada sDescodificada - Cadena antes de las transformaciones. La cadena sCodificada es devuelta en formato Unicode, todos los caracteres no ASCII ( signos de puntuación, espacios, acentos... ) de sDescodificada són sustituidos por su notación %XX, donde XX es su equivalente hexadecimal. Ejemplo <script language="JavaScript"> <!-- // creamos la cadena cadena = "Hola! amigo"; // codificamos cadena = escape ( cadena ); // alertamos los datos alert ( cadena ); // resultado: "Hola%21%20amigo" --> </script>
29. Recibir la petición AJAX Lo primero que haremos será comprobar el estado de la petición y lo haremos con el método readyState que nos puede devolver cualquiera de los siguientes valores: 0 (No inicializado) - Los datos de la petición no se han definido 1 (Abierto) - La recepción de datos está en curso 2 (Cargado) - La recepción de datos ha finalizado pero los datos no están disponibles 3 (Interactive) - El objeto aún no está listo para otra petición pero ha recibido ya los datos. 4 (Completado) - El objeto está listo para otra petición Y una vez estamos en estado cargado, ya podemos leer el texto recibido usando el método responseText Ejemplo function leerDatos(){ if (oXML.readyState == 4) { alert (oXML.responseText); } }
30. ejemplo <script> function leerDatos(){ if (oXML.readyState == 4) { alert (oXML.responseText); } } function AJAXCrearObjeto(){ var obj; if(window.XMLHttpRequest) { // no es IE obj = new XMLHttpRequest(); } else { // Es IE o no tiene el objeto try { obj = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert('El navegador utilizado no está soportado'); } } return obj; } oXML = AJAXCrearObjeto(); oXML.open('GET', 'archivo.txt'); oXML.onreadystatechange = leerDatos; oXML.send(''); </script>
31. La respuesta AJAX Por definición, AJAX utiliza XML para organizar los datos transmitidos entre el servidor y el navegador, para que el navegador sea capaz de interpretar estos datos, tendrá que identificarlos cómo XML y su contenido tendrá que ser un XML válido, o de lo contrario, los datos no serán utilizables. Los encabezadosEl primer paso para que el navegador interprete el contenido recibido es que tenga el encabezado de contenido XML (text/xml), esto lo conseguimos con el siguiente encabezado HTTP: Content-Type: text/xml
32. La respuesta AJAX Cómo nuestra respuesta XML será habitualmente generada de manera dinámica, es recomendable enviar también encabezamientos de control de caché para asegurarnos que la aplicación siempre estará trabajando con los contenidos que solicita y no con una cache almacenada en su navegador: Cache-Control: no-cache, must-revalidate Expires: Mon, 26 Jul 1997 05:00:00 GMT
33. La respuesta AJAX Mandar estos encabezados con diferentes lenguajes de programación de lado de servidor, generalmente deberemos poner estos códigos al principio del todo del documento: <?php header("Content-Type: text/xml"); header("Cache-Control: no-cache, must-revalidate"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); ?> #!/usr/bin/perl print "Content-Type: text/xml"; print "Cache-Control: no-cache, must-revalidate"; print "Expires: Mon, 26 Jul 1997 05:00:00 GMT"; <% response.ContentType="text/xml" response.CacheControl="no-cache, must-revalidate" response.Expires="Mon, 26 Jul 1997 05:00:00 GMT" %>
34. La respuesta AJAX El contenidoCuando el navegador recibe el contenido en XML, lo analizara para estructurar los datos recibidos para que podamos tratarlos desde nuestra aplicación, para que esto funcione, el contenido del documento deberá ser XML válido y por lo tanto, deberá empezar con la declaración de versión: <?xml version="1.0"?> Seguidamente podremos enviar los datos en formato XML correcto <?xml version="1.0"?> <xml> <mensaje> <color>#000000</color> <texto>Texto del mensaje</texto> </mensaje> </xml>
35. Tratamiento de la respuesta AJAX Una vez recibida la petición AJAX debemos saber interpretar los datos XML recibidos usando JavaScript, para ello, utilizaremos responseXML en lugar de responseText, y podremos empezar a parsear el XML recibido: <script> function leerDatos(){ if (oXML.readyState == 4) { var xml = oXML.responseXML.documentElement; // ... } } </script> ARCHIVO.XML <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <xml> <mensaje> <texto>Ejemplo 1</texto> </mensaje> <mensaje> <texto>Ejemplo 2</texto> </mensaje> </xml>
36. Tratamiento de la respuesta AJAX Acceso a un elemento XML A partir de este momento, la variable xml ( responseXML.documentElement ) será una referencia al documento XML recibido, y nos permitirá el acceso a los datos enviados por el servidor en forma de documento XML usando DOM <script> var item = xml.getElementsByTagName('mensaje')[0]; </script> Acceso al texto de un elemento <script> var item = xml.getElementsByTagName('mensaje')[0]; var txt = item.getElementsByTagName('texto')[0]; alert(txt.firstChild.data) </script>
37. getElementsByTagName El método getElementsByTagName devuelve una lista de todos los sub elementos del elemento actual que tienen un nombre determinado. Ejemplo <select id="mi_select"> <option>1 <option>2 <option>3 </select> <script language="JavaScript"> <!-- oSelect = document.getElementById("mi_select"); oItems = oSelect.getElementsByTagName("option"); alert('Opciones:' + oItems.length); --> </script>
38. Mostrar los datos al usuario Una vez hemos recibido y conocemos los datos que necesitamos del servidor, deberemos mostrarlos al usuario de alguna manera. En la mayoría de casos, lo que nos interesa, no es mostrar estos datos en un mensaje emergente usando la función alert, sino que queremos mostrar los datos en la misma página que está viendo el usuario sin usar refrescar. ¿Dónde mostramos los datos?Para mostrar estos datos, necesitamos un objeto HTML al que le podamos modificar su contenido de manera que el usuario pueda verlo. Normalmente aunque no siempre, usaremos un objeto div al que le podremos modificar su contenido usando la función innerHTML: <div id="miDiv1">Aquí aparecerán los datos</div>
39. Mostrar los datos al usuario ¿Como mostramos los datos?Para mostrar los datos que hemos obtenido en el div que hemos creado, primero accederemos al objeto a través de su id ( miDiv1 en el ejemplo) usando el método getElementById y luego podremos usar innerHTML para indicarle el contenido en formato HTML que tendrá este div en su interior: <script> // Accedemos al DIV con getElementById miDiv = document.getElementById('miDiv1'); // Modificamos su contenido miDiv.innerHTML = '<b>Este es el nuevo contenido</b>'; </script>
40.
41. Implementaciones de AJAX Librerías de clienteEstas nos permiten trabajar fácilmente con llamadas al servidor y tratar los datos recibidos, la ventaja de estas es que no dependen de un lenguaje de servidor pero por esta misma razón suelen integrarse peor. prototype - Esta interesante librería de JavaScript dispone de ( entre otros ) la clase Ajax, que nos facilitarán muchisimo el trabajo en AJaX Librerías de cliente/servidorEste tipo de librerías nos permite hacer llamadas a funciones del servidor desde el cliente usando unas funciones JavaScript autogeneradas a las que llamaremos proxies. Ajax.NET Professional - Conocido como AjaxPro nos permite crear una proxy para llamar a métodos .Net del servidor desde JavaScript. xaJax - xaJax es un framework (marco de trabajo) escrito en PHP de código abierto que permite crear fácilmente aplicaciones web que utilizan AJaX XOAD - XOAD es un proxy de PHP usando XMLHttpRequest y JSON