今天学习了Ajax的最基本的流程,就是没有使用任何的JavaScript类库,现在我们把上一次的内容用另一种方式实现--用XMLHTTPRequest对象进行AJAX的异步数据交互。虽然很笨但很实用。其他都不变,只变化verify.js。我们不妨再创建一个js得了。
//用户名校验的方法
//这个方法使用XMLHTTPRequest对象进行AJAX的异步数据交互
var xmlhttp;
function verify(){
//1.使用dom的方式获取文本框中的值
//document.getElementBuId("userName")是dom中获取元素节点的一种方法,一个元素节点对应HTML页面中的一个标签,如果<input>
//.value可以获取一个元素节点的value属性值
var userName = document.getElementById("userName").value;
//2.创建XMLHttpRequest对象
//这是XMLHttpRequest兑现使用中最为复杂的一步
//需要这对IE和其他类型浏览器建立这个对象的不方式写不同的代码
if(window.XMLHttpRequest){
//针对FireFox,Mozillar,opera,safari,IE7,IE8
xmlhttp = new XMLHttpRequest();
//针对某些特定版本的mozillar浏览器的bug修正
if(xmlhttp.overrideMimeType){
xmlhttp.overrideMimeType("text/xml")
}
}else if(window.ActiveXObject){
//针对IE5,IE5.5,IE6(IE7,IE8)
//两个可以用于创建XMLHTTPRequest对象的控件名称,保存在一个js数组中
//排在前面的版本较新
var activexName =["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
for(var i=0;i<activexName.length;i++){
try{
//取出一个控件名进行创建,如果创建成功就终止循环
//如果创建失败,抛出异常,然后继续循环,继续尝试创建
xmlhttp = new ActiveXObject(activexName[i]);
break;
} catch(e){
}
}
}
// 确认XMLHttpRequest对象创建成功
// if(!xmlhttp){
// alert("XMLHttpRequest对象创建失败!");
// return;
// }else{
// //alert(xmlhttp);
// alert(xmlhttp.readyState);
// }
//2 注册回调函数
//注册回调函数时只需要函数名不要加括号
//我们需要注册的是函数名称,如果加上括号,就把函数的返回值给注册上了,这是错误的
xmlhttp.onreadystatechange = callback;
//3设置连接信息
//第一个参数表示http的请求方式。支持所有http的请求方式。主要使用get和post
//第二个参数表示请求的url地址,get方式的参数也在url中
//第三个参数表示采用异步还是同步方式交互,true表示异步
//GET方式请求的代码
//xmlhttp.open("GET","AJAXServer?name="+userName,true);
//POST方式请求的代码
xmlhttp.open("POST","AJAXServer",true);
//POST方式需要自己设置http的请求头
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//POST方式发送数据
xmlhttp.send("name="+userName);
//4 发送数据,开始和服务器端进行交互
//同步方式下,send这句话会在服务器设置回来后才执行完
//异步方式,send这句话执行晚会立即完成
//GET方式
//xmlhttp.send(null);
}
//回调函数
function callback(){
// alert(xmlhttp.readyState);
//5接收响应数据
//判断对象的状态是交互完成
if(xmlhttp.readyState==4){
//判断http的交互是否成功、
if(xmlhttp.status==200){
//获取服务器端返回的数据
//获取服务器端输出的纯文本数据
var responseText = xmlhttp.responseText;
//将数据显示在页面上
//通过dom方式找到div标签所对应的元素节点
var divNode = document.getElementById("result");
//设置元素节点中的html内容
divNode.innerHTML=responseText;
}else
{
alert("出错了");
}
}
}
代码注释比较详细,就不啰嗦了。
分享到:
相关推荐
在本篇“快速理解Ajax(二)”中,我们将深入探讨Ajax的核心概念、工作原理及其在实际开发中的应用。 首先,我们要明确Ajax的核心组成部分: 1. **XMLHttpRequest对象**:它是Ajax的核心,负责在后台与服务器通信...
本篇文章将深入探讨Ajax的三级联动实现,尤其适合初学者快速理解Ajax的异步传输机制。 ### 一、什么是Ajax三级联动? Ajax三级联动是指在网页中,通常在下拉框中,当用户选择一级选项时,根据一级选项的数据动态...
这个教程将通过以上10个经典例子,结合实际的数据库文件,让你亲手实践,深入理解Ajax的用法和功能,从而快速上手Ajax开发。每个例子都将涵盖Ajax请求的创建、数据处理和页面更新等多个环节,确保你在实践中掌握Ajax...
它的API设计得易于理解和使用,使得开发者可以快速地进行网页动态化开发。在本实例中,jQuery将用于处理用户的交互事件,如点击或改变选择,同时更新和加载相应的级联内容。 ajax(Asynchronous JavaScript and XML...
在IT行业中,Spring、Struts...这个实例可能包含了完整的代码结构、配置文件、数据库设计以及详细的使用说明,帮助学习者快速掌握三大框架与Ajax的整合技巧。通过实际操作,能更好地理解和运用这些技术,提升开发能力。
这个例子是一个简单的Ajax实现,适合初学者理解Ajax的工作原理。下面我们将详细解析这个例子中的关键知识点。 首先,我们看到一个名为`First.html`的HTML文件,其中包含了一个JavaScript函数`createXmlHttp()`。这...
【标题】:“Ajax三层结构网上商城源码”指的是一个基于Ajax技术实现的电子商务网站源代码,采用经典的三层架构设计,包括表示层、业务逻辑层和数据访问层。 【描述】:“代码完整,功能全,适合参考”说明这个源码...
Ajax中文手册是为开发者提供的一份详细指南,旨在帮助初学者快速掌握Ajax的核心概念、使用方法以及相关API。这份手册以.chm(Microsoft编写的帮助文档格式)呈现,方便用户离线查阅。 Ajax的核心特性在于异步性,它...
本文将深入解析如何利用Ajax、jQuery以及JSON来实现这一功能,通过具体代码示例和实践心得,帮助读者理解并掌握这一技术要点。 ### Ajax与jQuery在省市县三级联动中的应用 #### 一、Ajax简介 Ajax(Asynchronous ...
**Ajax技术详解** ...通过这个视频教程,学习者不仅可以理解Ajax的工作原理,还能掌握实际应用技巧,为就业做好准备。同时,由于文件过大,采用百度网盘分享,便于学员下载和观看,解决了大文件传输的问题。
### 快速学习AJAX的关键知识点 #### 一、AJAX概述 - **定义**:AJAX(Asynchronous JavaScript and XML)是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以实现网页的部分更新,...
**三、Ajax应用场景** 1. **表单验证**:在提交前通过Ajax检查用户输入的有效性,实时给出反馈,提高用户体验。 2. **分页加载**:在滚动页面时,通过Ajax动态加载更多内容,避免一次性加载大量数据导致页面卡顿。...
在快速上手Ajax的过程中,有几个关键知识点是必须掌握的: 1. **JavaScript基础**:Ajax的核心是JavaScript,因此熟悉JavaScript语法和DOM操作是必不可少的。你需要了解如何创建和执行JavaScript函数,以及如何通过...
在IT行业中,三级联动是一种常见的前端交互功能,尤其在地理信息选择、筛选或者表单填写时经常被用到。这个“AJax带数据库的三级...对于开发者来说,理解和掌握这些技术对于开发交互性强、响应快速的Web应用至关重要。
在“四天学会Ajax 快速上手”的课程中,你将了解到以下关键知识点: 1. **XMLHttpRequest对象**:这是Ajax的基础,用于在后台与服务器进行通信。通过这个对象,你可以发送HTTP请求并接收响应,而不会中断用户的界面...
综上所述,实现“jQuery各种插件和JQuery Ajax三级联动地区下拉框”涉及到jQuery库、插件开发、AJAX交互、DOM操作和性能优化等多个方面。这个功能不仅实用,而且对于学习和理解JavaScript和jQuery的深入使用非常有...
《深入理解Ajax基于JavaScript的RIA开发》是一本专注于Web开发技术的专业书籍,其配书源码包含了一系列实际的示例和实践项目,旨在帮助读者深入掌握Ajax和基于JavaScript的富互联网应用(Rich Internet Applications...
本AjaxDEMO适合初学者学习,旨在提供一个基础的实践平台,帮助理解Ajax的工作原理及其在实际开发中的应用。** ### 1. Ajax基础知识 Ajax的核心是JavaScript对象XMLHttpRequest,它允许在后台与服务器端通信。当...
本资料《理解Ajax:用Javascript构建Web程序》将深入探讨这一技术。 **JavaScript**是实现Ajax的核心,是一种广泛用于客户端的脚本语言,主要在浏览器环境中运行。JavaScript允许开发者动态地修改HTML文档、处理...
软件开发这个领域,永远都在飞速发展,大家都必须不断的学习新的知识、 技能、框架、IDE、甚至新的语言。传说中的骨灰级高手们,就像传说中的大侠, ...希望这本书,能够对大家快速学习AJAX,有所帮助。