Ajax Forums

http://blog.joycode.com/dflying/archive/2006/11/26/88040.aspx

ASP.NET AJAX Quick Start

  1. Definition: ASP.NET (SearchSQLServer.com)
  2. Definition: Ajax (SearchVB.com)
  3. Definition: Atlas (SearchVB.com)
  4. Podcast: Mike Gunderloy on the pros and cons of Atlas (SearchVB.com)
  5. Download: ASP.NET AJAX v1.0 beta (Microsoft)
  6. Overview: ASP.NETAJAX (Microsoft)
  7. Tutorial: "Hello World" in Atlas (Coding Atlas)

 

ASP.NET AJAX Basics

  1. Article: A Primer on Microsoft Atlas (Ajax World)
  2. Tutorial: An Introduction to Ajax and Atlas with ASP.NET 2.0 (Erich Peterson, 4guysfromrolla.com)
  3. Tutorial: Asynchronous Communication Layer Overview (Microsoft)
  4. Tutorial: Partial-Page Rendering Overview (Microsoft)
  5. Tutorial: How to install ASP.NET AJAX (Microsoft)
  6. Tutorial: Tips for new ASP.NET AJAX users (Microsoft)
  7. Tutorial: Common ASP.NET AJAX development scenarios (Microsoft)
  8. Download: ASP.NET AJAX sample applications (Microsoft)

 

ASP.NET AJAX Tutorials

  1. Tutorial: Atlas at last! (Adnan Farooq Hashmi) -- Part 1 | Part 2 | Part 3
  2. Tutorial: Beginning Atlas series: Why Atlas? (Omar Al Zabir)
    Introduction | Part 1 | Part 2 | Part 3 | Part 4 | Part 5 | Part 6 | Part 7
  3. Tutorial: ASP.NET Atlas Powers the AJAX-Style Sites You've Been Waiting For (Microsoft)
  4. Tutorial: Enhancing Existing Applications with ASP.NET AJAX Extensions (Microsoft)
  5. Tutorial: Using the UpdatePanel Control in ASP.NET AJAX Applications (Microsoft)
  6. Tutorial: Customizing Partial-Page Rendering with Client Scripting (Microsoft)
  7. Tutorial: Using Timer Control to Enable Partial-Page Updates (Microsoft)
  8. Tutorial: Creating Custom Client Scripts in ASP.NET AJAX (Microsoft)
  9. Tutorial: Call a Web Service from JavaScript using Server Types (Microsoft)
  10. Tutorial: Making JavaScript easier (Microsoft)
  11. Tutorial: Performing data access (Microsoft)
  12. Tutorial: Controls and UI (Microsoft)
  13. Tutorial: Call a Web Service with ASP.NET AJAX without writing client-side scripts (Fredrik Normen)
  14. Tutorial: Using Atlas with PHP (Shanku Niyogi)
  15. Tutorial: Update Panel: Having fun with errors (Luis Abreu)
  16. Tutorial: Cool UI Templating Technique to use with ASP.NET AJAX for non-UpdatePanel scenarios (Scott Guthrie)
  17. Tutorial: Sliding Task Lists project -- Building an Atlas application from a scratch (Coding Atlas)
  18. Tutorial: Sliding Task Lists project (day 1) -- Building a user interface (Coding Atlas)
  19. Tutorial: Sliding Task Lists project (day 2) -- Implementing ASP.NET 2.0 membership provider (Coding Atlas)
  20. Tutorial: Sliding Task Lists project (day 3) -- Using ModalPopup extender to create panels for adding new tasks (Coding Atlas)
  21. Tutorial: Sliding Task Lists project (day 4) -- Database tables and saving new tasks with Atlas (Coding Atlas)
  22. Tutorial: Sliding Task Lists project (day 5) -- Reorder Lists and client side update panel refresh (Coding Atlas)

 

ASP.NET AJAX Articles and References

  1. Article: Atlas renamed ASP.NET AJAX, to ship by end of year (SearchVB.com)
  2. Article: Atlas: Think before you lift (SearchVB.com)
  3. Article: Microsoft unleashes Atlas at MIX06 (SearchVB.com)
  4. Article: Atlas means "Ajax for the masses" (SearchVB.com)
  5. Article: Microsoft's Atlas -- Ajax in a box (Way.Nu)
  6. Article: Atlas Programming Model (Nikhil Kothari)
  7. Article: InPlaceEditing with Atlas Behaviors (Nikhil Kothari)
  8. Article: InPlaceEditing - Implementing Script Behaviors in Atlas (Nikhil Kothari)
  9. Article: Back Button Support for Atlas UpdatePanels (Nikhil Kothari)
  10. Article: Script Loading Tips (Nikhil Kothari)
  11. Article: Using Atlas Update Panel Server Control (Code4Vista)
  12. Article: From closures to prototypes (Bertrand Le Roy) -- Part 1 | Part 2
  13. Article: How to add Atlas to an existing site (Jay Kimble, CodeBetter.com)
  14. Article: Add "Atlas" controls to the Visual Studio 2005 Toolbox (Public Sector Developer Weblog)
  15. Article: Dragging and dropping with ASP.NET 2.0 and Atlas (The Code Project)
  16. Article: Implementing Ajax Using ASP.NET 1.1 (15 Seconds)
  17. Reference: ASP.NET AJAX client class library (Microsoft)
  18. Reference: Client-Side Type System & Reflection API Overview (Microsoft)
  19. Reference: Client-Side Error Type Extensions API Overview (Microsoft)
  20. Reference: ASP.NET AJAX server class library (Microsoft)

 

ASP.NET AJAX "How Do I?" Videos

  1. Get Started with Atlas: Watch | Download
  2. Get Started with the Atlas Control Toolkit: Watch | Download
  3. Use the Atlas CascadingDropDown Control Extender: Watch | Download
  4. Implement Dynamic Partial-Page Updates with Atlas: Watch | Download
  5. Make Client-Side Network Callbacks with Atlas: Watch | Download
  6. Write a Custom Atlas Control Extender: Watch | Download
  7. Add Atlas Features to an Existing Web Application: Watch | Download
  8. Atlas Enable an Existing Web Service: Watch | Download
  9. Use the Atlas TextBoxWatermark Control Extender: Watch | Download
  10. Use the Atlas Popup Control Extender: Watch | Download
  11. Use the Atlas ModalPopup Extender Control: Watch | Download
  12. Use the Atlas AlwaysVisible Control Extender: Watch | Download
  13. Use the Atlas Accordion Control: Watch | Download
  14. Use the Atlas Client Library Controls: Watch | Download
  15. Use the Atlas Collapsible Panel Extender: Watch | Download
  16. Use the Atlas Draggable Panel Extender: Watch | Download
  17. Build a Mashup using Microsoft Atlas: Watch | Download
  18. Use the Atlas DynamicPopulate Extender: Watch | Download
  19. Use the Atlas FilteredTextbox Extender: Watch | Download
  20. Use the ASP.NET AJAX HoverMenu Extender: Watch | Download
  21. Use the ASP.NET AJAX ToggleButton Extender: Watch | Download
  22. Use an ASP.NET AJAX ScriptManagerProxy: Watch | Download
  23. Use the ASP.NET AJAX DropShadow Extender: Watch | Download
  24. Use the ASP.NET AJAX PasswordStrength Extender: Watch | Download
  25. Use the ASP.NET AJAX RoundedCorners Extender: Watch | Download

 

More Webcasts and Videos

  1. Webcast: Creating a customer view with Atlas (Wahlin Consulting)
  2. Webcast: Simplifying XMLHTTP programming with ASP.NET Atlas (Channel 9) -- Part 1 | Part 2
  3. Webcast: Enabling Partial Page Updates with the ASP.NET Atlas UpdatePanel (Channel 9)
  4. Webcast: Attaching Client Functionality to ASP.NET Server Controls using ASP.NET Atlas (Channel 9)
  5. Webcast: AJAX Enabling ASP.NET 2.0 Web Parts with Atlas (Channel 9)
  6. Video: Atlas Technical Overview (Microsoft)
  7. Video: Mashup 101: Virtual Earth -- Part 1 | Part 2 (Microsoft)
  8. Video: Control Toolkit (Microsoft)
  9. Video The Ajax Experience (Microsoft)
  10. Video: Technology Preview (Microsoft)
  11. Video: Application Demos (Microsoft)
  12. Video: First Look (Microsoft)

 

Working with ASP.NET AJAX Controls

  1. ASP.NET AJAX Control Toolkit home page (Microsoft)
  2. Article: With Microsoft's Atlas toolkit, no wait for Ajax controls (SearchVB.com)
  3. Article: Atlas Control Toolkit: A large, open-source framework (SearchVB.com)
  4. Article: Atlas Control Toolkit (And Why It Is Really Cool) (Scott Guthrie)
  5. Article: Testing the Toolkit (Shawn Burke)
  6. Article: Free Atlas Control Toolkit Test Automation Harness Published (Scott Guthrie)
  7. Control: Introducing Drag-Drop and Animations with Microsoft Atlas (Shiju Varghese)
  8. Control: Microsoft Atlas Control Extender -- Focus (Chris Crowe)
  9. Control: Master / Detail drop down lists -- client side data binding (Coding Atlas)
  10. Control: Always visible loading image (Coding Atlas)
  11. Control: ReorderList control (Coding Atlas)
  12. Control: Atlas ScriptManager Control (Nikhil Kothari)
  13. Control: TextBoxCounter Atlas Extender (Scott Cate)
  14. Control: Atlas PasswordStrength Display Extender control (Paul Glavich)
  15. Control: UpdateProgress Control and Ajax Activity Image Animations (Scott Guthrie)
  16. Tutorial: Working with Atlas Control Toolkit (ASPAlliance.com)
  17. Tutorial: Dynamic content made easy (How to use the new dynamic population support for Toolkit controls) (Delay's Blog)
  18. Tutorial: Building a Mashup using the Atlas Virtual Earth Map control (Jonathan Hawkins)

 

General Ajax Resources

  1. Article: Ajax development: The what, how and when (SearchVB.com)
  2. Article: Ajax development: The what, how and when, continued -- Five tips for getting started (SearchVB.com)
  3. Article: 2005 in review: Ajax makes news, but will it make the grade? (SearchVB.com)
  4. Article: Ajax hype and reality (SearchWebServices.com)
  5. Article: Can Ajax be running partner of Web services? (SearchWebServices.com)
  6. Article: Ajax and interface design (Luke Wroblewski)
  7. Quiz: Ajax quiz: Do you speak geek? (WhatIs.com)
  8. Reference: Ajax Learning Guide (SearchVB.com)
  9. Reference: Comparison of Ajax frameworks for ASP.NET (Daniel Zeiss)
  10. Tutorial: Populating a DropDownList using Ajax and ASP.NET (ASPAlliance)

 

ASP.NET AJAX Forums and Blogs

  1. Where peers share know-how and experience: ITKnowledge Exchange (SearchVB.com)
  2. Forum: Atlas general questions (DotNetSlackers)
  3. Forum: Atlas code samples (DotNetSlackers)
  4. Blog: ASP.NET AJAX Blog Roll (Microsoft)
gComputing's Forum
Translation original provenance; http://www.w3schools.com/ajax/default.asp
AJAX stands for Asynchronous JavaScript And XML.

AJAX is a type of programming made popular in 2005 by Google (with Google Suggest).

AJAX is not a new programming language, but a new way to use existing standards.

With AJAX you can create better, faster, and more user-friendly web applications.

AJAX is based on JavaScript and HTTP requests.

What You Should Already Know

Before you continue you should have a basic understanding of the following:

If you want to study these subjects first, find the tutorials on our Home page.


AJAX = Asynchronous JavaScript and XML

AJAX is not a new programming language, but a technique for creating better, faster, and more interactive web applications.

With AJAX, your JavaScript can communicate directly with the server, using the JavaScript XMLHttpRequest object. With this object, your JavaScript can trade data with a web server, without reloading the page.

AJAX uses asynchronous data transfer (HTTP requests) between the browser and the web server, allowing web pages to request small bits of information from the server instead of whole pages.

The AJAX technique makes Internet applications smaller, faster and more user-friendly.

lamp  AJAX is a browser technology independent of web server software.


AJAX is Based on Web Standards

AJAX is based on the following web standards:

The web standards used in AJAX are well defined, and supported by all major browsers. AJAX applications are browser and platform independent.


AJAX is About Better Internet Applications

Web applications have many benefits over desktop applications; they can reach a larger audience, they are easier to install and support, and easier to develop.

However, Internet applications are not always as "rich" and user-friendly as traditional desktop applications.

With AJAX, Internet applications can be made richer and more user-friendly.


You Can Start Using AJAX Today

There is nothing new to learn.

AJAX is based on existing standards. These standards have been used by most developers for several years.


AJAX Uses HTTP Requests

In traditional JavaScript coding, if you want to get any information from a database or a file on the server, or send user information to a server, you will have to make an HTML form and GET or POST data to the server. The user will have to click the "Submit" button to send/get the information, wait for the server to respond, then a new page will load with the results.

Because the server returns a new page each time the user submits input, traditional web applications can run slowly and tend to be less user-friendly.

With AJAX, your JavaScript communicates directly with the server, through the JavaScript XMLHttpRequest object

With an HTTP request, a web page can make a request to, and get a response from a web server - without reloading the page. The user will stay on the same page, and he or she will not notice that scripts request pages, or send data to a server in the background.


The XMLHttpRequest Object

By using the XMLHttpRequest object, a web developer can update a page with data from the server after the page has loaded!

AJAX was made popular in 2005 by Google (with Google Suggest).

Google Suggest is using the XMLHttpRequest object to create a very dynamic web interface: When you start typing in Google's search box, a JavaScript sends the letters off to a server and the server returns a list of suggestions.

The XMLHttpRequest object is supported in Internet Explorer 5.0+, Safari 1.2, Mozilla 1.0 / Firefox, Opera 8+, and Netscape 7.


Your First AJAX Application

To understand how AJAX works, we will create a small AJAX application.

First, we are going to create a standard HTML form with two text fields: username and time. The username field will be filled in by the user and the time field will be filled in using AJAX.

The HTML file will be named "testAjax.htm", and it looks like this (notice that the HTML form below has no submit button!):

<html>
<body>
<form name="myForm">
Name: <input type="text" name="username" />
Time: <input type="text" name="time" />
</form>
</body>
</html>

AJAX - Browser Support

The keystone of AJAX is the XMLHttpRequest object.

Different browsers use different methods to create the XMLHttpRequest object.

Internet Explorer uses an ActiveXObject, while other browsers uses the built-in JavaScript object called XMLHttpRequest.

To create this object, and deal with different browsers, we are going to use a "try and catch" statement. You can read more about the try and catch statement in our JavaScript tutorial.

Let's update our "testAjax.htm" file with the JavaScript that creates the XMLHttpRequest object:

<html>
<body>
<script type="text/javascript">
function ajaxFunction() {
var xmlHttp; try {
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
} catch (e) {
// Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("Your browser does not support AJAX!");
return false;
}
}
}
}
</script>
<form name="myForm">
Name: <input type="text" name="username" />
Time: <input type="text" name="time" />
</form>
</body>
</html>

Example explained: First create a variable xmlHttp to hold the XMLHttpRequest object.

Then try to create the object with XMLHttp=new XMLHttpRequest(). This is for the Firefox, Opera, and Safari browsers. If that fails, try xmlHttp=new ActiveXObject("Msxml2.XMLHTTP") which is for Internet Explorer 6.0+, if that also fails, try xmlHttp=new ActiveXObject("Microsoft.XMLHTTP") which is for Internet Explorer 5.5+

If none of the three methods work, the user has a very outdated browser, and he or she will get an alert stating that the browser doesn't support AJAX.

Note: The browser-specific code above is long and quite complex. However, this is the code you can use every time you need to create an XMLHttpRequest object, so you can just copy and paste it whenever you need it. The code above is compatible with all the popular browsers: Internet Explorer, Opera, Firefox, and Safari.


AJAX - More About the XMLHttpRequest Object

Before sending data to the server, we have to explain three important properties of the XMLHttpRequest object.

The onreadystatechange Property

After a request to the server, we need a function that can receive the data that is returned by the server.

The onreadystatechange property stores the function that will process the response from a server. The following code defines an empty function and sets the onreadystatechange property at the same time:

xmlHttp.onreadystatechange=function()
 {
 // We are going to write some code here
 }

The readyState Property

The readyState property holds the status of the server's response. Each time the readyState changes, the onreadystatechange function will be executed.

Here are the possible values for the readyState property:

StateDescription
0The request is not initialized
1The request has been set up
2The request has been sent
3The request is in process
4The request is complete

We are going to add an If statement to the onreadystatechange function to test if our response is complete (this means that we can get our data):

xmlHttp.onreadystatechange=function()
 {
 if(xmlHttp.readyState==4)
 {
 // Get the data from the server's response
 }
 }

The responseText Property

The data sent back from the server can be retrieved with the responseText property.

In our code, we will set the value of our "time" input field equal to responseText:

xmlHttp.onreadystatechange=function()
 {
 if(xmlHttp.readyState==4)
 {
 document.myForm.time.value=xmlHttp.responseText;
 }
 }

AJAX - Sending a Request to the Server

To send off a request to the server, we use the open() method and the send() method.

The open() method takes three arguments. The first argument defines which method to use when sending the request (GET or POST). The second argument specifies the URL of the server-side script. The third argument specifies that the request should be handled asynchronously. The send() method sends the request off to the server. If we assume that the HTML and ASP file are in the same directory, the code would be:

xmlHttp.open("GET","time.asp",true);
xmlHttp.send(null);

Now we must decide when the AJAX function should be executed. We will let the function run "behind the scenes" when the user types something in the username text field:

<form name="myForm">
Name: <input type="text"
onkeyup="ajaxFunction();" name="username" />
Time: <input type="text" name="time" />
</form>

Our updated AJAX-ready "testAjax.htm" file now looks like this:

<html>
<body>
<script type="text/javascript">
function ajaxFunction() {
var xmlHttp; try {
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
} catch (e) {
// Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("Your browser does not support AJAX!");
return false;
}
}
} xmlHttp.onreadystatechange=function() { if(xmlHttp.readyState==4) { document.myForm.time.value=xmlHttp.responseText; } } xmlHttp.open("GET","time.asp",true); xmlHttp.send(null);
}
</script>
<form name="myForm">
Name: <input type="text"
onkeyup="ajaxFunction();" name="username" />
Time: <input type="text" name="time" />
</form>
</body>
</html>

AJAX - The Server-Side ASP Script

Now we are going to create the script that displays the current server time.

The responseText property (explained in the previous chapter) will store the data returned from the server. Here we want to send back the current time. The code in "time.asp" looks like this:

<%
response.expires=-1
response.write(time)
%>

Note: The Expires property sets how long (in minutes) a page will be cached on a browser before it expires. If a user returns to the same page before it expires, the cached version is displayed. Response.Expires=-1 indicates that the page will never be cached.




http://www.w3schools.com/ajax/ajax_example_suggest.asp
http://www.w3schools.com/ajax/ajax_source.asp
http://www.w3schools.com/ajax/ajax_database.asp
http://www.w3schools.com/ajax/ajax_xmlfile.asp
http://www.w3schools.com/ajax/ajax_responsexml.asp

PHP MySQL Functions ... XML DOM XSL XSLT RSS AJAX ASP ADO PHP SQL tutorials, references, examples for web building. ... PHP 5+: MySQL and the MySQL library is not enabled by default. ... www.w3schools.com/PHP/php_ref_mysql.asp?output=print
PHP Date / Time Functions date_sunset(), Returns the time of sunset for a given day / location, 5 ... WEB HOSTING. $15 Domain Name Registration Save $20 / year! ... www.w3schools.com/php/php_ref_date.asp
PHP Zip File Functions PHP 5+: Zip functions and the Zip library is not enabled by default and must be downloaded ... WEB HOSTING. $15 Domain Name Registration Save $20 / year! ... www.w3schools.com/php/php_ref_zip.asp


Complete UI Featured Products

Save yourself time, save your boss's money and look like a genius! Download Complete UI: nine killer Ajax components:
 *  Grid
 *  ComboBox
 *  Tree
 *  Tabstrip
 *  Fisheye
 *  Callout
 *  Calendar
 *  Spotlight
 *  Ajax Toolkit