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中批量替换文件名的实现代码
Jul 20 PHP
php 网上商城促销设计实例代码
Feb 17 PHP
PHP CURL 内存泄露问题解决方法
Feb 12 PHP
PHP实现CSV文件的导入和导出类
Mar 24 PHP
php截取指定2个字符之间字符串的方法
Apr 15 PHP
PHP设计模式之迭代器模式
Jun 17 PHP
ZendFramework框架实现连接两个或多个数据库的方法
Dec 08 PHP
php防止sql注入的方法详解
Feb 20 PHP
详解PHP中的外观模式facade pattern
Feb 05 PHP
PHP数组常用函数实例小结
Aug 20 PHP
php日志函数error_log用法实例分析
Sep 23 PHP
php 多继承的几种常见实现方法示例
Nov 18 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实现的数字验证码及数字运算验证码
2015/07/30 PHP
php实现压缩合并js的方法【附demo源码下载】
2016/09/22 PHP
php获取开始与结束日期之间所有日期的方法
2016/11/29 PHP
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
用javascript操作xml
2006/11/04 Javascript
用jquery来定位
2007/02/20 Javascript
浅析Js中的单引号与双引号问题
2013/11/06 Javascript
JQuery文字列表向上滚动的代码
2013/11/13 Javascript
jQuery实现设置、移除文本框默认值功能
2015/01/13 Javascript
javascript实现动态改变层大小的方法
2015/05/14 Javascript
jQuery实现导航滚动到指定内容效果完整实例【附demo源码下载】
2016/09/20 Javascript
微信开发 js实现tabs选项卡效果
2016/10/28 Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
2017/07/27 Javascript
Vue.js仿Select下拉框效果
2020/02/18 Javascript
python 生成目录树及显示文件大小的代码
2009/07/23 Python
NetworkX之Prim算法(实例讲解)
2017/12/22 Python
利用Python复制文件的9种方法总结
2019/09/02 Python
Django框架 Pagination分页实现代码实例
2019/09/04 Python
Python的pygame安装教程详解
2020/02/10 Python
python入门:argparse浅析 nargs='+'作用
2020/07/12 Python
伦敦一家非常流行的时尚精品店:Oxygen Boutique
2017/01/15 全球购物
PHP笔试题
2012/02/22 面试题
Java编程面试题
2016/04/04 面试题
编程用JAVA解析XML的方式
2013/07/07 面试题
俄语翻译实习生的自我评价分享
2013/11/06 职场文书
中学生获奖感言
2014/02/04 职场文书
资助贫困学生倡议书
2014/05/16 职场文书
报效祖国演讲稿
2014/09/15 职场文书
中学生旷课检讨书2篇
2014/10/09 职场文书
党员个人总结自评
2015/02/14 职场文书
2015年党风建设工作总结
2015/04/29 职场文书
想创业成功,需要掌握这些要点
2019/12/06 职场文书
python调试工具Birdseye的使用教程
2021/05/25 Python
JVM上高性能数据格式库包Apache Arrow入门和架构详解(Gkatziouras)
2021/05/26 Servers
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android