1.创建一个XMLHttpRequest对象 2.创建url,data,通过xmlHttpRequest.send() 3.服务器端接收ajax的请求,做相应处理(操作数据库),然后返回结果(echo语句) 4.客户端通过xmlHttpRequest的属性reponseText,response
2.创建url,data,通过 xmlHttpRequest.send()
3.服务器端接收 ajax的请求,做相应处理(操作数据库),然后返回结果(echo 语句)
4.客户端通过xmlHttpRequest的属性 reponseText , responseXML 取的数据,然后就完成局部刷新当前页面任务
1. [代码]用户名需要验证的表单
<form action="" method="post"> 用户名:<input type="text" name="username1" id="username"/><input type="button" onclick="checkName();" value="验证用户名"/><span id="myres" style="color:#FF0000"></span><br /> </form>
2. [代码]r.php
<?php
header("Content-Type: text/xml;charset=utf-8");
//不要缓存数据
header("Cache-Control: no-cache");
//接受数据
// $username=$_POST['username'];
$username=$_GET['username'];
if($username=="zqwang121"){
echo "用户名不可用";
}else{
echo "用户名可用";
}
?>
3. [代码]创建ajax引擎
function xmlHttpObject(){
var xmlHttpRequest;
if(window.ActiveXObject){
xmlHttpRequest= new ActiveXObject("Microsoft.XMLHTTP");
}else{
xmlHttpRequest= new XMLHttpRequest();
}
return xmlHttpRequest;
}
4. [代码]使用get方式提交数据
function checkName(){
var myXmlHttpRequest=xmlHttpObject();
if(myXmlHttpRequest){
//通过myXmlHttpRequest对象发送到服务器的某个页面
var url="http://localhost/r.php?nowtime="+new Date()+"&username="+document.getElementById("username").value;
//第一个参数表示请求的方式, "get" / "post"
//第二个参数指定url,对哪个页面发出ajax请求(本质仍然是http请求)
//第三个参数表示 true表示使用异步机制,如果false表示不使用异步
myXmlHttpRequest.open("get",url,true);
myXmlHttpRequest.onreadystatechange=chuli;
myXmlHttpRequest.send(null);
}
5. [代码]使用post提交数据
function checkName(){
var myXmlHttpRequest=xmlHttpObject();
if(myXmlHttpRequest){
var url="http://localhost/r.php";
var date="username="+ document.getElementById("username").value;
myXmlHttpRequest.open("post",url,true);
myXmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
myXmlHttpRequest.onreadystatechange=chuli;
myXmlHttpRequest.send(date);
}
6. [代码]回调函数
function chuli(){
if(myXmlHttpRequest.readyState==4){
document.getElementById("myres").innerHTML=myXmlHttpRequest.responseText;
if(myXmlHttpRequest.responseText=="用户名不可用"){
document.getElementById("myres").style.color="red";
}else{
document.getElementById("myres").style.color="green"
}
}
}
