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 存取 MySQL 数据库的一个例子
Oct 09 PHP
php下防止单引号,双引号在接受页面转义的设置方法
Sep 25 PHP
php echo()和print()、require()和include()函数区别说明
Mar 27 PHP
域名和cookie问题(域名后缀)
Oct 10 PHP
基于php-fpm的配置详解
Jun 03 PHP
使用Linux五年积累的一些经验技巧
Jun 20 PHP
php 邮件发送问题解决
Mar 22 PHP
PHP使用mysql_fetch_row查询获得数据行列表的方法
Mar 18 PHP
php curl请求信息和返回信息设置代码实例
Apr 27 PHP
php查询及多条件查询
Feb 26 PHP
Yii1.1中通过Sql查询进行的分页操作方法
Mar 16 PHP
php基于自定义函数记录log日志方法
Jul 21 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的cURL快速入门教程 (小偷采集程序)
2011/06/02 PHP
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
2014/06/30 PHP
PHP+Memcache实现wordpress访问总数统计(非插件)
2014/07/04 PHP
php+mysql数据库实现无限分类的方法
2014/12/12 PHP
php数组使用规则分析
2015/02/27 PHP
php函数传值的引用传递注意事项分析
2016/06/25 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
细说浏览器特性检测(2)-通用事件检测
2010/11/05 Javascript
juqery 学习之三 选择器 子元素与表单
2010/11/25 Javascript
jquery选择器-根据多个属性选择示例代码
2013/10/21 Javascript
火狐下input焦点无法重复获取问题的解决方法
2014/06/16 Javascript
PHP实现的各种中文编码转换类分享
2015/01/23 Javascript
jQuery实现简单二级下拉菜单
2015/04/12 Javascript
Bootstrap每天必学之级联下拉菜单
2016/03/27 Javascript
BootStrap的弹出框(Popover)支持鼠标移到弹出层上弹窗层不隐藏的原因及解决办法
2016/04/03 Javascript
js对象浅拷贝和深拷贝详解
2016/09/05 Javascript
JavaScript继承与多继承实例分析
2018/05/26 Javascript
微信小程序使用template标签实现五星评分功能
2018/11/03 Javascript
微信小程序实现日历效果
2018/12/28 Javascript
Vue.js构建你的第一个包并在NPM上发布的方法步骤
2019/05/01 Javascript
Vue实现购物车的全选、单选、显示商品价格代码实例
2019/05/06 Javascript
vue 实现 rem 布局或vw 布局的方法
2019/11/13 Javascript
Python+Django在windows下的开发环境配置图解
2009/11/11 Python
Python生成pdf文件的方法
2014/08/04 Python
python中去空格函数的用法
2014/08/21 Python
tensorflow实现加载mnist数据集
2018/09/08 Python
Python分割指定页数的pdf文件方法
2018/10/26 Python
Python对excel文档的操作方法详解
2018/12/10 Python
python实现读取类别频数数据画水平条形图案例
2020/04/24 Python
PyQt5-QDateEdit的简单使用操作
2020/07/12 Python
H5新属性audio音频和video视频的控制详解(推荐)
2016/12/09 HTML / CSS
英国最大的在线床超市:Bed Star
2019/01/24 全球购物
文秘应届生求职信
2014/07/05 职场文书
2016中秋节问候语
2015/11/11 职场文书
浅析Django接口版本控制
2021/06/26 Python
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python