Ajax技术及 XMLHttpRequest 对象
来源:互联网 发布:还珠格格3知画怀孕 编辑:程序博客网 时间:2024/05/16 05:45
这一节,主要内容是简单介绍Ajax技术,并了解其核心技术: XMLHttpRequest 对象。
1、首先,要了解什么是 Ajax :
Ajax是asynchronous javascript and xml 缩写,意思是异步的JavaScript 与 XML。这是一种使用客户端脚本与web服务器交换数据的web应用开发方法,可以与JSP、ASP、PHP、Python和CGI脚本交互,不用关心服务器是什么。
对于 web 开发人员来说,发送异步请求是一个巨大的进步。很多在服务器执行的任务都相当费时。AJAX 出现之前,这可能会引起应用程序挂起或停止。Ajax能够在不刷新页面的情况下,通过 XMLHttpRequest 对象向服务器发送请求,得到服务器回应后,在不需要重新载入整个页面的情况下。即可将服务器传送过来的数据处理后显示在页面上。
Ajax开发过程中,要使用客户端脚本(主要是JavaScript)发送 XMLHttpRequest 请求并处理和显示服务器回应的数据,使用服务器端脚本来相应客户端的 XMLHttpRequest 请求。通过 AJAX,JavaScript 无需等待服务器的响应,而是:在等待服务器响应时执行其他脚本,当响应就绪后对响应进行处理。
2、接下来,了解如何使用 XMLHttpRequest 对象:
XMLHttpRequest 对象用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
所有现代浏览器均支持 XMLHttpRequest 对象,IE7+、Firefox、Chrome、Safari 以及 Opera均内建 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveX 对象)。
异步传送过程中的数据格式,过去常常使用XML。但是在服务器或者客户端,对于XML文档的生成和解析都会导致复杂的代码,降低了开发的效率。基于这些原因,现在很多人喜欢用JSON(一种轻量级的数据格式)来组织数据。
创建 XMLHttpRequest 对象的语法: variable=new XMLHttpRequest();
老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象: variable=new ActiveXObject("Microsoft.XMLHTTP");
运行结果如下:
1、首先,要了解什么是 Ajax :
Ajax是asynchronous javascript and xml 缩写,意思是异步的JavaScript 与 XML。这是一种使用客户端脚本与web服务器交换数据的web应用开发方法,可以与JSP、ASP、PHP、Python和CGI脚本交互,不用关心服务器是什么。
对于 web 开发人员来说,发送异步请求是一个巨大的进步。很多在服务器执行的任务都相当费时。AJAX 出现之前,这可能会引起应用程序挂起或停止。Ajax能够在不刷新页面的情况下,通过 XMLHttpRequest 对象向服务器发送请求,得到服务器回应后,在不需要重新载入整个页面的情况下。即可将服务器传送过来的数据处理后显示在页面上。
Ajax开发过程中,要使用客户端脚本(主要是JavaScript)发送 XMLHttpRequest 请求并处理和显示服务器回应的数据,使用服务器端脚本来相应客户端的 XMLHttpRequest 请求。通过 AJAX,JavaScript 无需等待服务器的响应,而是:在等待服务器响应时执行其他脚本,当响应就绪后对响应进行处理。
2、接下来,了解如何使用 XMLHttpRequest 对象:
XMLHttpRequest 对象用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
所有现代浏览器均支持 XMLHttpRequest 对象,IE7+、Firefox、Chrome、Safari 以及 Opera均内建 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveX 对象)。
异步传送过程中的数据格式,过去常常使用XML。但是在服务器或者客户端,对于XML文档的生成和解析都会导致复杂的代码,降低了开发的效率。基于这些原因,现在很多人喜欢用JSON(一种轻量级的数据格式)来组织数据。
创建 XMLHttpRequest 对象的语法: variable=new XMLHttpRequest();
老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象: variable=new ActiveXObject("Microsoft.XMLHTTP");
我们来看看一具体例子:
index.html代码
<!DOCTYPE html><html><head> <script type="text/javascript"> function showHint(str) { var xmlhttp; if (str.length==0) { document.getElementById("txtHint").innerHTML=""; return; } if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("txtHint").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","gethint.php?q="+str,true); xmlhttp.send(); } </script></head><body><h3>please input(A - Z): </h3><form action=""> last name: <input type="text" id="txt1" onkeyup="showHint(this.value)" /></form><p>suggest: <span id="txtHint"></span></p></body></html>
gethint.php代码
<?php// 用名字来填充数组$a[]="Anna";$a[]="Brittany";$a[]="Cinderella";$a[]="Diana";$a[]="Eva";$a[]="Fiona";$a[]="Gunda";$a[]="Hege";$a[]="Inga";$a[]="Johanna";$a[]="Kitty";$a[]="Linda";$a[]="Nina";$a[]="Ophelia";$a[]="Petunia";$a[]="Amanda";$a[]="Raquel";$a[]="Cindy";$a[]="Doris";$a[]="Eve";$a[]="Evita";$a[]="Sunniva";$a[]="Tove";$a[]="Unni";$a[]="Violet";$a[]="Liza";$a[]="Elizabeth";$a[]="Ellen";$a[]="Wenche";$a[]="Vicky";//获得来自 URL 的 q 参数$q=$_GET["q"];//如果 q 大于 0,则查找数组中的所有提示if (strlen($q) > 0){ $hint=""; for($i=0; $i<count($a); $i++) { if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q)))) { if ($hint=="") { $hint=$a[$i]; } else { $hint=$hint." , ".$a[$i]; } } }}// 如果未找到提示,则把输出设置为 "no suggestion"// 否则设置为正确的值if ($hint == ""){ $response="no suggestion";}else{ $response=$hint;}//输出响应echo $response;?>
运行结果如下:
0 0
- Ajax技术及 XMLHttpRequest 对象
- Ajax技术---核心XMLHttpRequest对象
- 《XMLHttpRequest对象-AJAX技术核心》
- Ajax技术1——XMLHttpRequest对象
- Ajax技术之XMLHttpRequest对象详解
- AJAX 简介 及 XMLHttpRequest对象的使用方法
- ajax-XMLHttpRequest()对象,属性及方法
- 利用 Microsoft.XMLHTTP/XMLHttpRequest 对象 实现Ajax技术 的总结
- Ajax之XMLHttpRequest对象(技术分析篇)
- Ajax 和 XMLHttpRequest 对象
- AJAX 创建 XMLHttpRequest对象
- ajax XMLHttpRequest 对象建立
- Ajax核心对象-- XMLHttpRequest
- Ajax - XMLHttpRequest对象
- AJAX核心XMLHttpRequest对象
- ajax-XMLHttpRequest 对象
- Ajax与XMLHttpRequest对象
- AJAX与XMLHttpRequest对象
- log4j和web.xml配置webAppRootKey 的问题
- 返回值为指针的函数——学生成绩单
- POJ 1258 Agri-Net
- 新版DataTabels里themeroller css文件的用处
- AlertManager设置第一次闹铃响起后,间隔多长时间再响
- Ajax技术及 XMLHttpRequest 对象
- vim 常用基本配置
- [Practical.Vim(2012.9)].Drew.Neil.Tip08学习摘要
- 计算机及操作系统启动的过程详解
- HouseRobber(即求一串数中不连续的数之和中最大的)
- 利用栈的基本操作,将十进制数转换为八进制数
- UITableView 避免奔溃的数组越界处理方法
- Hibernate的中使用<generator>设置主键的生成方式
- 柔性数组