php的ajax简单实例


Posted in PHP onFebruary 27, 2014

php的ajax简单实例

当输入j后,会触发ajax效果,从后台获取相应的名字中带有j的数据,并展示在suggestions中。

代码实现如下:

实现ajax需要三个文件,一个是html的表单文件,一个是js的核心文件,一个是php的后台文件。

下面的是html文件,当键盘按下时触发showHint方法,在showHint方法中会有ajax的核心内容,实例化,获取地址,获取数据并展示等等。

<html>
<head>
<script src="clienthint.js"></script> 
</head>
<body>
<form> 
First Name:
<input type="text" id="txt1"
onkeyup="showHint(this.value)">
</form>
<p>Suggestions: <span id="txtHint"></span></p>
</body>
</html>

 

下面是js的内容clienthint.js。

var xmlHttp
function showHint(str)
{
if (str.length==0)
 { 
 document.getElementById("txtHint").innerHTML=""
 return
 }
//获取xmlHttpObject对象,如果为空,提示浏览器不支持ajax
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 } 
 //获取url
var url="gethint.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
 //回调函数,执行动作
xmlHttp.onreadystatechange=stateChanged 
 //open
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
} 
function stateChanged() 
{ 
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{ 
//将获取的信息插入到txtHint中
document.getElementById("txtHint").innerHTML=xmlHttp.responseText 
} 
}

//获取xml对象
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
 {
 xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
 }
catch (e)
 {
 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
}
return xmlHttp;
}

下面是php的内容。根据ajax对象传入的参数,获取相应的数据。

<?php
// Fill up array with names
$a[]="Anna";
$a[]="Brittany";
$a[]="Cinderella";
$a[]="Diana";
$a[]="Eva";
$a[]="Fiona";
$a[]="Gunda";
$a[]="Hege";
$a[]="Inga";
$a[]="Johanna";
$a[]="Jiqing";
$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";
//get the q parameter from URL
$q=$_GET["q"];
//lookup all hints from array if length of 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];
     }
   }
 }
}
//Set output to "no suggestion" if no hint were found
//or to the correct values
if ($hint == "")
{
$response="no suggestion";
}
else
{
$response=$hint;
}
//output the response
echo $response;
?>
PHP 相关文章推荐
如何在PHP中使用Oracle数据库(6)
Oct 09 PHP
模拟SQLSERVER的两个函数:dateadd(),datediff()
Oct 09 PHP
PHP中防止SQL注入实现代码
Feb 19 PHP
深入PHP数据缓存的使用说明
May 10 PHP
关于URL最大长度限制的相关资料查证
Dec 23 PHP
PHP下载远程文件到本地存储的方法
Mar 24 PHP
Thinkphp和onethink实现微信支付插件
Apr 13 PHP
PHP实现导出带样式的Excel
Aug 28 PHP
功能强大的php文件上传类
Aug 29 PHP
PHP读取、解析eml文件及生成网页的方法示例
Sep 04 PHP
PHP实现简单计算器小程序
Aug 28 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
Oct 10 PHP
php中require和require_once的区别说明
Feb 27 #PHP
php更新修改excel中的内容实例代码
Feb 26 #PHP
php获取文件大小的方法
Feb 26 #PHP
PHP批量上传图片的具体实现方法介绍.
Feb 26 #PHP
php把session写入数据库示例
Feb 26 #PHP
php操作mysql数据库的基本类代码
Feb 25 #PHP
php获取bing每日壁纸示例分享
Feb 25 #PHP
You might like
php中用数组的方法设置cookies
2011/04/21 PHP
第五章 php数组操作
2011/12/30 PHP
php中拷贝构造函数、赋值运算符重载
2012/07/25 PHP
PHP Error与Logging函数的深入理解
2013/06/03 PHP
PHP stripos()函数及注意事项的分析
2013/06/08 PHP
CI框架无限级分类+递归的实现代码
2016/11/01 PHP
PHP+ajax实现上传、删除、修改单张图片及后台处理逻辑操作详解
2020/02/12 PHP
JavaScript 创建对象
2009/07/17 Javascript
Jquery多选下拉列表插件jquery multiselect功能介绍及使用
2013/05/24 Javascript
使用jquery prev()方法找到同级的前一个元素
2014/07/11 Javascript
解决jquery插件:TypeError:$.browser is undefined报错的方法
2015/11/21 Javascript
JS动态加载脚本并执行回调操作
2016/08/24 Javascript
前端框架Vue.js中Directive知识详解
2016/09/12 Javascript
JS实现css hover操作的方法示例
2017/04/07 Javascript
javascript基于定时器实现进度条功能实例
2017/10/13 Javascript
vuex与组件联合使用的方法
2018/05/10 Javascript
vue完成项目后,打包成静态文件的方法
2018/09/03 Javascript
在vue中获取token,并将token写进header的方法
2018/09/26 Javascript
vue项目出现页面空白的解决方案
2019/10/31 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
[04:13]2014DOTA2国际邀请赛 专访DC目前形势不容乐观
2014/07/12 DOTA
浅析Python中else语句块的使用技巧
2016/06/16 Python
安装Python的教程-Windows
2017/07/22 Python
python中的for循环
2018/09/28 Python
从0到1使用python开发一个半自动答题小程序的实现
2020/05/12 Python
python调用百度AI接口实现人流量统计
2021/02/03 Python
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
如何客观的进行自我评价
2013/12/17 职场文书
大学生实训报告总结
2014/11/05 职场文书
解除租房协议书
2014/12/03 职场文书
先进个人材料怎么写
2014/12/30 职场文书
检讨书范文
2019/04/16 职场文书
2019消防宣传标语!
2019/07/10 职场文书
创业计划书之熟食店
2019/10/16 职场文书
详解gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
2021/11/27 Vue.js
24年收藏2000多部退役军用电台
2022/02/18 无线电