本文将通过一个具体的例子来展示Ajax的工作原理,通过与传统请求响应方式的对比展现Ajax中处理请求响应的不同方式。在这个示例程序中,所要完成的任务非常简单,仅仅需要输入一个姓名然后提交这个表单,在服务器端处理这个请求,然后在页面显示处理的结果,在下面的示例程序中,将展示通过传统方式和Ajax方式分别处理这个请求响应的具体过程。
传统方式:
- <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Insert title here</title>
- </head>
- <body>
- <form action="SayHello.jsp">
- name:<input type="text" name="name"/>
- <input type="submit" name="submit"/>
- </form>
- <%
- if(request.getParameter("name")!=null&&request.getParameter("name").length()>0)
- out.print("Hello "+request.getParameter("name"));
- %>
- </body>
- </html>
传统方式的实现方式是直接将表单提交到自身的页面,然后在服务器端经过编译后执行其中的Java代码。
Ajax方式(Servlet代码以及配置文件略):
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>SayHello</title>
- <script type="text/javascript">
-
- function createXMLHttpRequest(){
-
- if(window.XMLHttpRequest){
-
-
- XMLHttpReq=new XMLHttpRequest();
- }else{
-
-
- if(window.ActiveXObject){
- try{
- XMLHttpReq=new ActionXObject("Msxm12.XMLHTTP");
- }catch(e){
- try{
- XMLHttpReq=new ActiveXObject("Microsoft.XMLHTTP");
- }catch(e){}
- }
- }
- }
- }
-
- function handleResponse() {
-
- if (XMLHttpReq.readyState == 4) {
-
- if (XMLHttpReq.status == 200) {
- var out = "";
- var res = XMLHttpReq.responseXML;
- var response= res.getElementsByTagName("response")[0].firstChild.nodeValue;
-
- document.getElementById("Hello").innerHTML = response;
- }
- }
- }
-
- function sendRequest(url){
-
- createXMLHttpRequest();
-
- XMLHttpReq.onreadystatechange=handleResponse;
-
- XMLHttpReq.open("GET",url,true);
-
- XMLHttpReq.send(null);
- }
-
- function sayHello()
- {
- var name=document.getElementById("name").value;
-
- sendRequest("SayHell?name="+name);
- }
- </script>
- </head>
- <body>
- <font size="1">
- name:<input type="text" id="name"/>
- <input type="button" value="提交" onclick="sayHello()"/>
- <div id="Hello"></div>
- </font>
- </body>
- </html>
代码解析:
1.创建XMLHttpRequest
2.设置回调函数
3.初始化XMLHttpRequest组建并发送请求
4. 服务器返回响应信息
5. 解析服务器返回的信息,更新用户界面
详细调用过程如下java教程网
![点击查看原始大小图片](http://t1.qpic.cn/mblogpic/1e4f2a0dde970774b5a0/2000)
最终Ajax方式处理请求的效果是通过XMLHttpRequest对象向服务器发送请求,在得到服务器的返回的处理结果以后,文本框中的用户输入信息依然存在,使用Ajax只是刷新了页面的局部区域,把处理的结果展示在页面的指定位置,对于页面的其他部分不会进行刷新。
分享到:
相关推荐
"AJAX原理与技术的深入分析" AJAX(Asynchronous JavaScript and XML)是一种异步通信技术,允许Web应用程序异步地从服务器请求数据,而不需要重新加载整个网页。下面我们将深入分析AJAX的原理、技术、意义和发展...
**Ajax原理的理解** Ajax,全称为Asynchronous JavaScript and XML,是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它的出现极大地提升了Web应用程序的用户体验,因为它允许数据在后台与服务器...
**Ajax原理详解** Ajax,全称为"Asynchronous JavaScript and XML",是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。Ajax的核心是JavaScript对象XMLHttpRequest,它允许在后台与服务器交换数据并...
### **Ajax 原理** Ajax的原理主要包含以下几个步骤: 1. **创建 XMLHttpRequest 对象**:这是Ajax的基础,现代浏览器通常都内置了XMLHttpRequest对象。 2. **开启一个HTTP请求**:使用XMLHttpRequest对象的`open()`...
### AJAX原理及用法 #### 一、什么是Ajax技术? Ajax(Asynchronous JavaScript and XML,异步JavaScript与XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据...
Ajax原理的实现依赖于一系列技术的协同工作,包括HTML、JavaScript、DHTML(Dynamic HTML)和DOM(Document Object Model)。 HTML是网页的基础结构,它用于创建交互式表单,设置用户输入的元素。在Ajax应用中,...
Ajax 详解教程讲述 Ajax 原理 Ajax 是一种异步 JavaScript 和 XML 技术,允许 Web 应用程序实时更新页面内容,而不需要重新加载整个页面。Ajax 技术的核心是使用 XMLHttpRequest 对象异步地从服务器获取数据,并...
Ajax原理的实现依赖于一系列技术的协同工作,包括HTML、JavaScript、DHTML(Dynamic HTML)和DOM(Document Object Model)。 HTML是网页的基础结构,它用于创建表单和其他元素,这些元素在Ajax交互中扮演着重要...
### AJAX原理与XMLHttpRequest详解 #### 一、引言 AJAX(Asynchronous JavaScript and XML,异步JavaScript和XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。其核心在于使用`XMLHttpRequest`...
### Ajax原理深度剖析 #### 一、Ajax概览与核心价值 Ajax,全称为“Asynchronous JavaScript and XML”,是一种用于创建动态网页的技术。它并非一种全新的技术,而是对现有技术(如XMLHttpRequest、DOM、CSS和...
在本项目中,“隐藏框架实现ajax原理”是一个演示如何利用隐藏iframe来实现Ajax交互的实例。下面我们将详细探讨Ajax的工作原理以及如何通过隐藏框架实现这一过程。 1. **Ajax工作原理**: Ajax的核心是JavaScript...
"AJAX原理及其在Web开发中的应用" AJAX(Asynchronous JavaScript and XML)是一种实现异步通信的技术,在Web开发中极为重要。本文将从AJAX的基本原理开始,逐步介绍AJAX的技术架构、主要组件、工作原理、优点和...
**Ajax原理简介** Ajax,全称"Asynchronous JavaScript and XML",是一种用于构建高度交互式Web应用程序的技术,使得页面能够在不完全刷新的情况下与服务器通信。它不是单一的技术,而是结合了多种技术,包括...
### AJAX原理详解 #### 一、引言 随着互联网技术的发展与用户对交互体验需求的提升,异步请求成为Web开发中的重要组成部分。AJAX(Asynchronous JavaScript and XML)作为一种无需重新加载整个网页即可更新部分...
**AJAX原理详解** AJAX,全称Asynchronous JavaScript and XML,是一种用于创建快速动态网页的技术。它允许在不重新加载整个网页的情况下,与服务器交换数据并更新部分网页内容。这种技术极大地改善了用户的交互...
**Ajax原理** 1. **用户交互**:当用户在页面上进行操作,如点击按钮,触发Ajax请求。 2. **创建XMLHttpRequest对象**:所有现代浏览器都内置了XMLHttpRequest对象,它是Ajax通信的基础。这个对象负责与服务器建立...
### Ajax原理与应用知识点详解 #### 一、Ajax技术背景 - **背景介绍**:Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这项技术最早出现在2005年左右,...
Ajax原理介绍,详细介绍了ajax的工作原理!
ajax原理及应用,概念,技术以及xmlhttprequest实例化