以下保存為getAjax.php
<?php
$a=array(
'a'=>1,
'b'=>2,
'c'=>3,
'd'=>4
);
if(isset($_GET["value"])){
if(isset($a[$_GET["value"]])){
echo $a[$_GET["value"]];
}
else{
echo 0;
}
}
>以下保存為putajax.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
<script type="text/javascript">
//這個函數是從網上down的,用來創建ajax對象.沒什麽可說的
function createRequest(){
if(typeof XMLHttpRequest!="undefined"){
return new XMLHttpRequest();
}else if(typeof ActiveXObject!="undefined"){
var xmlHttp_ver=false;
var xmlHttp_vers=["MSXML2.XmlHttp.5.0","MSXML2.XmlHttp.4.0","MSXML2.XmlHttp.3.0","Microsoft.XmlHttp"];
if(!xmlHttp_ver){
for(var i=0;i<=xmlHttp_vers.length;i++){
try{
new ActiveXObject(xmlHttp_vers[i]);
xmlHttp_ver=xmlHttp_vers[i];
break;
}catch(oError){
;
}
}
}
if(xmlHttp_ver){
return new ActiveXObject(xmlHttp_ver);
}else{
throw new Error("Could not create XML HTTP Request.");
}
}else{
throw new Error("Your browser doesn't support an XML HTTP Request.");
}
}
//這個函數就是使用ajax對象連接php文件,並對返回的值處理
function getvalue(obj){
//創建ajax對象,來自於上面的函數
var xmlobject=createRequest();
//通過id屬性獲取文本框對象
obj=document.getElementById(obj);
//使用ajax對象連接getAjax.php,並把文本框的值傳入,就和瀏覽器訪問壹樣
//第壹個參數聲明 傳送方法,可以是get或post
//第二個參數是訪問地址
//第三個是 是不是需要異步,使用ajax效果需要為true
xmlobject.open("get","getAjax.php?value="+obj.value,true);
//這裏是頭信息發送後需要發送的內容,因為是get方式,所以這裏不發送,如果為post,這裏就是發送post的內容
xmlobject.send(null);
//onreadystatechange為ajax對象的回調函數,可以實時監測狀態
xmlobject.onreadystatechange = function(){
//readyState=4時為 已準備好
if(xmlobject.readyState == 4) {
//status=200 狀態為OK
if(xmlobject.status == 200){
//responseText為獲取的php生成的文本,壹下為壹個判斷,如果不為0,就是存在對應的值
if(xmlobject.responseText!=0){
alert("您輸入"+xmlobject.responseText+"已存在");
}
else{
alert("恭喜,您輸入的值可用");
}
}
}
}
}
</script>
</head>
<body>
<form name="frm" method="post" action="12312312">
<input type="text" name="v" id="v"/>
<input type="button" name="chk" value="測試" onclick="getvalue('v')"/>
</form>
</body>
</html>
將以上兩個文件放在同壹個目錄並保證訪問時php文件能被解析.
這個php裏使用數組模擬出壹個數據庫表.如果單獨訪問php文件,需要傳入壹個value參數,根據這個參數程序輸出內容.
如果使用ajax,妳只需訪問html文件,在文本框裏填入值.(這裏填入的值只要不是php數組裏的鍵,就提示填入值可用,否則提示被占用)
php文件很簡單,沒做註釋
html的ajax部分給妳了詳細註釋,懂了就很簡單了