首先我们来了解怎么在javascript中创建这个对象:
程序代码
var xmlHttp = new XMLHttpRequest();
这行简单的代码在 Mozilla、Firefox、Safari、Opera 以及基本上所有以任何形式或方式支持 Ajax 的非 Microsoft 浏览器中,创建了 XMLHttpRequest 对象。但是对于市场占有率达到70%的IE来说,这种方法是不行的,而不同的IE版本还有不同的创建方法,所以我们需要在IE下面使用下面两种创建对象的办法:
程序代码
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");//针对较新的浏览器
} catch (err) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");//针对较老的浏览器
} catch (err2) {
xmlHttp = false;
}
}
即使这样,我们也无法预料有些浏览器可能无法创建这个对象,所以在创建不成功的情况下,我们还要加上一句:
程序代码
if (!xmlHttp){
alert("无法创建 XMLHttpRequest 对象!");
}
结合起来就是:
程序代码
var xmlHttp = false;
try {
xmlHttp = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
xmlHttp = false;
}
}
}
if (!xmlHttp){
alert("无法创建 XMLHttpRequest 对象!");
}
然后,让我们建立一个函数getInfo(),打开异步请求:
程序代码
function getInfo() {
var num = document.getElementById("num").value;//获得表单的数据
var url = "/ajax/1.php?n=" + escape(num);
xmlHttp.open("GET", url, true);//这里的true代表是异步请求
}
一旦用 open() 配置好之后,就可以发送请求了。虽然可以使用 send() 发送数据,但也能通过 URL 本身发送数据。事实上,在大部分GET 请求中,用 URL 发送数据要容易得多,所以这里用null作为send()的参数就可以了。url地址里面的php文件是被请求来处理所需要数据的php文件,就像我们平时用PHP的时候一样,后面的参数可以加多个,并用&分隔开来。
xmlHttp.send(null);
在发送了数据之后,我们需要用回调方法来获得服务器的状态,所以就用到了onreadystatechange 属性。
xmlHttp.onreadystatechange = updatePage;
此语句已经要放在send()语句前面,这样才会有效,后面的updatePage是处理返回信息的一个函数。完整的getInfo()如下:
程序代码
function getInfo() {
var num = document.getElementById("num").value;//获得表单的数据
var url = "/ajax/1.php?n=" + escape(num);
xmlHttp.open("GET", url, true);//这里的true代表是异步请求
xmlHttp.onreadystatechange = updatePage;
xmlHttp.send(null);
}
我们还需要在html里面来触发这个函数:
程序代码
<input name="num" id="num" onblur="getInfo()" type="text" />
下面我们需要来编写updatePage()这个函数:
程序代码
function updatePage(){
if (xmlhttp.readyState == 4) {
var response = xmlhttp.responseText;
document.getElementById("city").value = response;
}
}
上面这段代码里面的readyState是服务器返回的一个状态,4这个状态表示请求已经发送,并处理完毕。responseText是获得服务器返回的信息,然后通过javascript赋给ID为city的表单。
到此,一个简单的Ajax程序就完成了,完整的javascript代码如下:
程序代码
var xmlHttp = false;
try {
xmlHttp = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
xmlHttp = false;
}
}
}
if (!xmlHttp){
alert("无法创建 XMLHttpRequest 对象!");
}
function getInfo() {
var num = document.getElementById("num").value;//获得表单的数据
var url = "/ajax/1.php?n=" + escape(num);
xmlHttp.open("GET", url, true);//这里的true代表是异步请求
xmlHttp.onreadystatechange = updatePage;
xmlHttp.send(null);
}
function updatePage(){
if (xmlhttp.readyState == 4) {
var response = xmlhttp.responseText;
document.getElementById("city").value = response;
}
}
这里还缺一个php文件,由于处理的方式不一样,写法也不一样,而且这不是Ajax的主要部分,所以这里就不放代码了。只要记住php是输出并返回所需要的数据就可以了。
这教程,对初学者挺适合.
Ajax+PHP简单基础入门实例教程
时间: 2024-12-30 14:08:07
Ajax+PHP简单基础入门实例教程的相关文章
Ajax+PHP简单基础入门实例教程_AJAX相关
首先我们来了解怎么在javascript中创建这个对象: 程序代码 var xmlHttp = new XMLHttpRequest(); 这行简单的代码在 Mozilla.Firefox.Safari.Opera 以及基本上所有以任何形式或方式支持 Ajax 的非 Microsoft 浏览器中,创建了 XMLHttpRequest 对象.但是对于市场占有率达到70%的IE来说,这种方法是不行的,而不同的IE版本还有不同的创建方法,所以我们需要在IE下面使用下面两种创建对象的办法: 程序代码 t
python基础入门实例教程(1/3)
代码如下 复制代码 [hello world] 1 创建hello.py 2 编写程序: if __name__ == '__main__': print "hello world"3 运行程序: python ./hello.py [注释] 1 无论是行注释还是段注释,均以#加一个空格来注释. 2 如果需要在代码中使用中文注释,必须在python文件的最前面加上如下注释说明: # -* - coding: UTF-8 -* - 3 如下注释用于指定解释器 #! /usr
ThinkPHP快速入门实例教程之数据分页_php实例
数据分页可能是web编程里最常用到的功能之一.ThinkPHP实现分页功能十分简洁.只需要定义几个参数就可以实现.并且扩展也十分方便. 下面让我们从零开始实现ThinkPHP的分页程序吧. 1.首先,我们得创建一个用于分页测试的数据库 test.sql代码如下. CREATE TABLE `test` ( `id` int(10) unsigned NOT NULL auto_increment, `name` char(100) NOT NULL, `content` varchar(300)
用原生JS对AJAX做简单封装的实例代码_javascript技巧
首先,我们需要xhr对象.这对我们来说不难,封装成一个函数. var createAjax = function() { var xhr = null; try { //IE系列浏览器 xhr = new ActiveXObject("microsoft.xmlhttp"); } catch (e1) { try { //非IE浏览器 xhr = new XMLHttpRequest(); } catch (e2) { window.alert("您的浏览器不支持ajax,请
flash 加载xml入门实例教程
flash 加载xml入门实例教程 在这篇文章中我们将使用一个xml文件,该文件描述了一个照相馆.的xml存储照片的标题和图像文件的位置 <?xml version="1.0"?> <gallery name="photo gallery"> <image name="picture_1" location="www.111cn.net/photo1.jpg" /> <image na
Vue.js快速入门实例教程_javascript技巧
什么是vue vue是法语中视图的意思,Vue.js是一个轻巧.高性能.可组件化的MVVM库,同时拥有非常容易上手的API. 一.基本结构 index.html代码: <script src="../vue.js"></script> <div id="app"> {{ message }} </div> <script src="app.js"></script> <
JavaScript Switch 入门实例教程
JavaScript Switch 入门实例教程 有条件的声明在JavaScript被用来执行不同的行动,根据不同的条件. 范例switch语句 如何撰写switch语句. <html> <body> <script type="text/javascript"> var d = new Date(); theDay=d.getDay(); switch (theDay) { case 5: document.write("<b&
【jQuery教程】jquery新手入门实例教程三ajax应用
我们在上一章 jquery新手入门实例教学二 用户注册(简单的表单验证) (/html/JQueryjiaocheng/200807/17-519.html) 里面有一行语句 $.get("php/user_register.php",{act:$(this).attr("ID"),v:$(this).val()},function(txt){ msg.html(txt); }) 这个就是jquery ajax应用的简单实例 什
Illustrator简单绘制热气球实例教程分享
给各位Illustrator软件的使用者们来详细的解析分享一下简单绘制热气球的实例教程. 教程分享: 1.首先,使用工具箱中的"矩形工具"画一个矩形,并以天蓝色到白色的渐变色填充矩形,注意不要使用描边色,结果如图1所示. 图1 2.使用"椭圆工具"画一个圆形,并以紫色到白色的渐变色填充,描边色设置为无,然后使用"直接选择工具"拖动圆形下方的锚点,修改圆形的形状,直到得到如图2所示的气球外形. 图2 3.复制并粘贴气球形状,并改变其大小,然