初识Ajax

背景知识: 

Ajax(Asynchronous JavaScript and XMLS异步JavaScriptXML)(“阿贾克斯”)技术

完成页面的局部刷新,从而提升操作性能。

AJAX 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。

依赖的核心对象:XMLHttpRequest

通过这个对象,您的 JavaScript 可在不重载页面的情况与 Web 服务器交换数据。AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。

AJAX 可使因特网应用程序更小、更快,更友好。AJAX 是一种独立于 Web 服务器软件的浏览器技术。

AJAX基于下列 Web标准: JavaScript XML HTML CSS AJAX中使用的 Web标准已被良好定义,并被所有的主流浏览器支持。AJAX应用程序独立于浏览器和平台。Web应用程序较桌面应用程序有诸多优势;它们能够涉及广大的用户,它们更易安装及维护,也更易开发。不过,因特网应用程序并不像传统的桌面应用程序那样完善且友好。

 

第一个Ajax程序

纯洁的返回文本数据的页面D:\Program Files\webdemo\14_Ajax\content.htm

Hello World!


使用异步处理:D:\Program Files\webdemo\14_Ajax\Ajax_recieve_content.htm

<html>
<head><title>接收content内容</title></head>
<body>
<script language="JavaScript">
	var xmlHttp;
	function createXMLHttp(){
		if (window.XMLHttpRequest){						// 创建XMLHttpRequest核心对象
			xmlHttp = new XMLHttpRequest()					// 使用FireFox内核
		}else {
			xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");	// 使用IE内核的浏览器
		}
	}

	function showMsg(){		// 显示信息
		createXMLHttp();	//
		xmlHttp.open("POST", "content.htm");	// 设置一个请求
		// 设置完请求后调用回调函数
		xmlHttp.onreadystatechange = showMsgCallback;
		xmlHttp.send(null);	// 发送请求,不设置参数
	}

	function showMsgCallback(){	// 回调函数
		if (xmlHttp.readyState == 4){			// 数据返回完毕
			if (xmlHttp.status == 200){			// HTTP操作正常
				var text = xmlHttp.responseText;// 接收返回内容
				// 设置要使用的CSS样式表
				// doucument.getElementById("msg").className = "样式表名称";
				document.getElementById("msg").innerHTML = text;
			}
		}
	}
</script>

	<input type="button" onClick="showMsg()" value="调用Ajax显示内容">
	<span id="msg"></span>
</body>
<html>


编译错误1

if (window.XMLHttpRequest()){                                     //创建XMLHttpRequest核心对象

 -->去掉()XMLHttpRequest 是属性不是函数

问题:

xmlHttp.onreadystatechange =showUseridCallback; showUseridCallback()是函数,怎么没有()?

编译错误2

 

显示效果:

 

网页错误详细信息

消息: 'text'未定义

: 28

字符: 5

代码: 0

URI: http://localhost/demo/14_Ajax/Ajax_recieve_content.htm

 

 

 

 

 

 

 

 

 


手敲千行不如单步一行!

调试手段:HTML代码怎么调试?类比servlet代码调试:System.out.printf("*********"); // 在后台看

在HTML中用:allert(“**************”);   //看程序进行到哪一步!

 

自我提问:

1、Ajax的历史、它只依赖于Java么?

 

2、AjaxxmlhttpRequests对象、方法、属性有专门的文档么?

jquery ajax比较。

参考文档:http://www.w3school.com.cn/index.html

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值