首页 > PHP资讯 > PHP培训技术 > ThinkPHPAjax使用详解及实例

ThinkPHPAjax使用详解及实例

PHP培训技术
ThinkPHP Ajax

ThinkPHP 内置了对 Ajax 的支持,可以方便的使用。下面以一个具体的例子来介绍 ThinkPHP Ajax
的使用。
提示

本文涉及的内容,适用于 ThinkAjax+mootools 来实现 Ajax ,使用 JQuery 来实现
ThinkPHP Ajax 请参见《ThinkPHP JQuery Ajax》。
Js 类库

要使用 ThinkPHP Ajax,需要加载的
Js 类库有:









这些 Js 类库可以在官方示例的 Public/Js
下获得,在本节实例代码下载包也提供,请确认在进行 Ajax 测试之前,正确加载了以上 Js 类库。
ajaxReturn
返回

ThinkPHP 提供了 ajaxReturn 方法用于 Ajax
调用后返回数据给客户端,语法如下:

$this->ajaxReturn(mixed data, string info, boolean
status, string type);

参数说明: 参数 说明
data 返回给客户端的数据。
info
提示信息。
status 返回状态,一般来说 1 表示执行成功,0 表示不成功。
type 指定 ajax
返回类型:JSON|XML,如果不指定,则取 DEFAULT_AJAX_RETURN 配置,该配置默认为 JSON 。
ThinkPHP Ajax
实例

下面的小例子,输入用户名,服务器端根据用户名来 Ajax 返回不同的信息,该例子可扩展为 Ajax 的用户登陆检测功能。
html
文件

form 表单及 Js 处理函数:




  1. <script language="JavaScript">
  2. function complete(data,status){
  3. if (status==1){
  4. $('list').innerHTML = ''+data+'你好!';
  5. }
  6. }
  7. 《script》




  8. 用户名:


  9. ue="提 交" />



ThinkAjax.sendForm() 函数参数说明:

第一个参数为提交表单的
id 。
第二是参数为提交服务器端处理的地址。
第三个参数为如果提交成功,执行的函数名称。
第四个参数为显示提示信息的 div
id。

服务端操作

假定服务端对用户名的检测操作为 Public/checkLogin :




  1. public function checkLogin(){
  2. if ($_POST['username'] == 'admin'){
  3. $this->ajaxReturn($_POST['username'],'用户名正确~',1);
  4. }else{
  5. $this->ajaxReturn('','用户名错误!',0);
  6. }
  7. }

当表单中输入的用户名是 admin
的时候,返回正确信息,否则返回用户名错误的提示。更进一步的,可以将上述 checkLogin 方法进行扩展成为用户登陆检测功能模块。
ThinkPHP
Ajax 实现流程说明

将表单提交按钮定义为 button ,点击触发 onClick 事件,执行 ThinkAjax.sendForm()
函数。
ThinkAjax.sendForm() 函数将表单提交(默认 POST 方式)给服务器端 checkLogin
操作执行。
checkLogin 操作根据检验结果使用 ajaxReturn 返回不同信息。
ThinkAjax.sendForm()
根据服务器端返回结果,将提示信息显示在 id="result" 的结果内并执行 complete() 函数。

ajaxReturn 如果返回的
status=1 ,complete() 函数执行 id="list" div 的 innerHTML 。

以上简单讲述了 ThinkPHP 的 Ajax 实现过程,上面的实例限于篇幅仅列出了关键代码,要查看该实例完整代码,请参阅《ThinkPHP Ajax 实例代码》,或者点击此处下载完整代码。

PHP培训技术

本文由欣才IT学院整理发布,未经许可,禁止转载。
支持4不支持0