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 文件夹删除、php清除缓存程序
Aug 25 PHP
PHP日期处理函数 整型日期格式
Jan 12 PHP
PHP学习笔记 IIS7下安装配置php环境
Oct 29 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
Jun 23 PHP
php socket实现的聊天室代码分享
Aug 16 PHP
thinkphp浏览历史功能实现方法
Oct 29 PHP
php使用APC实现实时上传进度条功能
Oct 26 PHP
WordPress网站性能优化指南
Nov 18 PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
Aug 15 PHP
PHP空值检测函数与方法汇总
Nov 19 PHP
PHP PDO数据库操作预处理与注意事项
Mar 16 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使用mysqli向数据库添加数据的方法
2015/03/20 PHP
windows server 2008/2012安装php iis7 mysql环境搭建教程
2016/06/30 PHP
PHP中实现中文字串截取无乱码的解决方法
2018/05/29 PHP
PHP5.5新特性之yield理解与用法实例分析
2019/01/11 PHP
jQuery ui1.7 dialog只能弹出一次问题
2009/08/27 Javascript
jquery图片上下tab切换效果
2011/03/18 Javascript
JS正则表达式获取分组内容的方法详解
2013/11/15 Javascript
Eclipse下jQuery文件报错出现错误提示红叉
2014/01/13 Javascript
javascript常用的正则表达式实例
2014/05/15 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 简史
2015/01/09 Javascript
javascript去除空格方法小结
2015/05/21 Javascript
node模块机制与异步处理详解
2016/03/13 Javascript
jQuery获取元素父节点的方法
2016/06/21 Javascript
angular ngClick阻止冒泡使用默认行为的方法
2016/11/03 Javascript
微信页面倒计时代码(解决safari不兼容date的问题)
2016/12/13 Javascript
深入理解react-router@4.0 使用和源码解析
2017/05/23 Javascript
使用angular-cli webpack创建多个包的方法
2018/10/16 Javascript
详解vue-cli中使用rem,vue自适应
2019/05/06 Javascript
Vue看了就会的8个小技巧
2021/01/21 Vue.js
Python标准库之多进程(multiprocessing包)介绍
2014/11/25 Python
Python Web框架Flask信号机制(signals)介绍
2015/01/01 Python
Python装饰器用法示例小结
2018/02/11 Python
Django中针对基于类的视图添加csrf_exempt实例代码
2018/02/11 Python
python数字图像处理实现直方图与均衡化
2018/05/04 Python
Python高级特性与几种函数的讲解
2019/03/08 Python
Jupyter Notebook 实现正常显示中文和负号
2020/04/24 Python
HTML5 直播疯狂点赞动画实现代码 附源码
2020/04/14 HTML / CSS
欧洲最大的笔和书写专家:The Pen Shop
2017/03/19 全球购物
党员一句话承诺大全
2014/03/28 职场文书
《三个小伙伴》教学反思
2014/04/11 职场文书
政协委员个人总结
2015/03/03 职场文书
党风廉政教育心得体会2016
2016/01/22 职场文书
公安忠诚教育心得体会
2016/01/23 职场文书
golang日志包logger的用法详解
2021/05/05 Golang
C#连接ORACLE出现乱码问题的解决方法
2021/10/05 Oracle
Promise静态四兄弟实现示例详解
2022/07/07 Javascript