初识Ajax
背景知识:
Ajax(Asynchronous JavaScript and XMLS异步JavaScript和XML)(“阿贾克斯”)技术
完成页面的局部刷新,从而提升操作性能。
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 |
手敲千行不如单步一行!
调试手段:HTML代码怎么调试?类比servlet代码调试
System.out.printf("*********");
àallert(“**************”);看程序进行到哪一步!
问题:
1、Ajax的历史、它只依赖于Java么?
2、Ajax的xmlhttpRequests对象、方法、属性有专门的文档么?
与jquery ajax比较。
参考文档: http://www.w3school.com.cn/index.html