AJAX
AJAX
AJAX
THETOPPERSWAY.COM
Purpose of AJAX
• Prevents unnecessary reloading of a page.
• When we submit a form, although most of the
page remains the same, whole page is reloaded
from the server.
• This causes very long waiting times and waste of
bandwidth.
• AJAX aims at loading only the necessary
innformation, and making only the necessary
changes on the current page without reloading the
whole page.
Technologies Used
• AJAX uses:
– Javascript (for altering the page)
– XML (for information exchange)
– ASP or JSP (server side)
Simple Processing
• AJAX is based on Javascript, and the main
functionality is to access the web server inside the
Javascript code.
• We access to the server using special objects; we
send data and retrieve data.
• When user initiates an event, a javascript function
is called which accesses server using the objects.
• The received information is shown to the user by
means of the Javascript’s functions.
Example
• We want to input data into a textbox.
• We want the textbox to have intellisense
property; guess entries according to input.
• http://www.w3schools.com/ajax/ajax_example.asp
• Only the ‘span’ part of the html code is changed.
Data Exchange in AJAX
• In AJAX:
Example(2)
• Another example:
http://www.w3schools.com/ajax/ajax_database.asp
• Therefore, by using AJAX, unnecessary
exchange of data is prevented, web pages
become:
– More interactive
– Faster
– More user friendly
History of AJAX
• Starts with web pages
• Static web pages
– Static html page is loaded
– No interaction with user
• Dynamic web pages
– Html page is generated dynamically
– Interaction with user
– Becomes slower as functionality increases
– Speed becomes untolerable, so AJAX has been
born
Alternative Technologies
• Not a technology, but a combination of
technologies.
• Technologies with similar tasks:
URLConnection, ASP and JSP
• Other technologies returns whole page and
client loads it.
• Only necessary data is returned and that part
is updated
Structure of System
• Client/Server architecture
• XMLHTTP object is used to make request
and get response in Client side
• Request can be done via “GET” or “POST”
methods
– “GET”: parameters are attached to the url used
to connect.
– “POST”: parameters are sent as parameters to a
function
• Not many changes in Server side
– Response is a combination of xml tags
C/S Processes
• Most of the time client requires two files
– Html page: handles GUI and calls a function of
JavaScript.
– JavaScript: handles the business logic of the
system
• In JavaScript, a request is sent to client and
response is taken from server via XMLHTTP
object
• Response of server should be returned in xml
file structure
Examination of Sample
response.write("<table>")
do until rs.EOF
for each x in rs.Fields
response.write("<tr><td><b>" & x.name & "</b></td>")
response.write("<td> & x.value & "</td></tr>")
next
rs.MoveNext
loop
response.write("</table>")
XMLHTTP Object
• The object that is used to connect to the
remote server is called XMLHTTP.
• It resembles the Java’s URL object that is
used to access a specific URL and get the
contents.
Creating the object
• For IE 5.5:
objXmlHttp=new ActiveXObject(“Microsoft.XMLHTTP”)
• For Mozilla:
objXmlHttp=new XMLHttpRequest()
Sending information
• After creating the object, we can send information to the
web server and get the answer using this object’s
functions:
• GET METHOD: xmlhttp.open(“GET”, url, true)
xmlhttp.send()
• POST METHOD: xmlhttp.open("POST", url, true)
xmlhttp.send(“date=11-11-2006&name=Ali")
THETOPPERSWAY.COM