利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法


Posted in PHP onDecember 19, 2011

准备工作:
① 首先要会使用ThinkPHP这个框架
② 最好有些ajax的基础(可以去看下小飞的另外一篇博文:Ajax实时验证"用户名/邮箱等"是否已经存在)
③ 4个js文档(点此免积分下载)

先贴上源代码:

<script type="text/javascript" src="__PUBLIC__/js/base.js"></script> 
<script type="text/javascript" src="__PUBLIC__/js/prototype.js"></script> 
<script type="text/javascript" src="__PUBLIC__/js/mootools.js"></script> 
<script type="text/javascript" src="__PUBLIC__/js/Ajax/ThinkAjax.js"></script> 
<script type="text/javascript"> 
function checktitle() 
{ 
ThinkAjax.send('__URL__/checktitle','ajax=1&title='+$('title').value,'','checkbox'); 
} 
</script> 
<form action="__URL__/insert" method="post" id="myform"> 
<table> 
<tbody> 
<tr> 
<td width="45" class="tRight">标题:</td> 
<td> 
<input type="text" id="title" name="title"> 
<input type="button" value="检查" onClick="checktitle();"> 
</td> 
<td> 
<span id="checkbox"></span> 
</td> 
</tr> 
</tbody> 
</table> 
</form>

代码解释:
为“检查”按钮添加一个onclick事件,当按钮被点击时,调用checktitle()函数
在checktitle函数中,我们只用到了ThinkAjax对象中的成员方法send

send:function(url,pars,response,target,tips,effect){……}
可以看出ThinkAjax.send方法共有6个参数:
参数url:表示要将客户端浏览器传输过来的数据提交到服务器上的哪个方法进行处理,我这里提交给“当前模块下的checktitle方法”处理
参数pars:相当于ajax中的send方法中的参数string,表示要提交过去的数据,该参数只用于post方式传值
参数response:自定义的回调函数,如果定义了回调函数,则服务器处理完提交过去的数据之后,将会把处理后的数据交给回调函数进行处理。该回调函数有两个参数:①data②status 参数data:将服务器端处理后的数据赋给data 参数status:表示处理后的状态信息,1表示成功 0 表示失败
参数target:表示将处理后的数据在哪个地方进行显示(或输出),比如:我将此参数赋为:checkbox,表示处理后的数据会在id=”checkbox”的标签进行信息输出
当前模块下的checktitle方法的源代码:

<?php 
class IndexAction extends Action 
{ 
// 首页 
public function index(){ 
$this->display(); 
} 
// 检查标题是否可用 
public function checkTitle() 
{ 
if(!empty($_POST['title'])) 
{ 
$Form = D("Form"); 
if($Form->getByTitle($_POST['title'])) 
{ 
$this->error('标题已经存在'); 
} 
else 
{ 
$this->success('标题可以使用!'); 
} 
} 
else 
{ 
$this->error('标题不能为空...'); 
} 
} 
} 
?>

文章作者:WEB开发_小飞
PHP 相关文章推荐
PHP 网络开发详解之远程文件包含漏洞
Apr 25 PHP
php foreach循环中使用引用的问题
Nov 06 PHP
PHP函数microtime()用法与说明
Dec 04 PHP
php_screw安装使用教程(另一个PHP代码加密实现)
May 29 PHP
两种设置php载入页面时编码的方法
Jul 29 PHP
PHP静态文件生成类实例
Nov 29 PHP
PHP中的socket_read和socket_recv区别详解
Feb 09 PHP
PHP5.0~5.6 各版本兼容性cURL文件上传功能实例分析
May 11 PHP
PHP5.6读写excel表格文件操作示例
Feb 26 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
Jan 22 PHP
php操作redis常见方法示例【key与value操作】
Apr 14 PHP
Laravel Reponse响应客户端示例详解
Sep 03 PHP
如何使用Linux的Crontab定时执行PHP脚本的方法
Dec 19 #PHP
PHP定时执行计划任务的多种方法小结
Dec 19 #PHP
在WINDOWS中设置计划任务执行PHP文件的方法
Dec 19 #PHP
php安全配置 如何配置使其更安全
Dec 16 #PHP
PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]
Dec 16 #PHP
php中使用DOM类读取XML文件的实现代码
Dec 14 #PHP
通达OA公共代码 php常用检测函数
Dec 14 #PHP
You might like
常见的PHP五种设计模式小结
2011/03/23 PHP
深入理解curl类,可用于模拟get,post和curl下载
2013/06/08 PHP
PHP 通过Socket收发十六进制数据的实现代码
2013/08/16 PHP
php源码之将图片转化为data/base64数据流实例详解
2016/11/27 PHP
php json中文编码为null的解决办法
2016/12/14 PHP
laravel5.6框架操作数据curd写法(查询构建器)实例分析
2020/01/26 PHP
javascript hashtable 修正版 下载
2010/12/30 Javascript
JS实现向表格行添加新单元格的方法
2015/03/30 Javascript
JavaScript 消息框效果【实现代码】
2016/04/27 Javascript
微信小程序网络请求wx.request详解及实例
2017/05/18 Javascript
解决微信二次分享不显示摘要和图片的问题
2017/08/18 Javascript
基于JavaScript 性能优化技巧心得(分享)
2017/12/11 Javascript
vuex 的简单使用
2018/03/22 Javascript
React Native日期时间选择组件的示例代码
2018/04/27 Javascript
Vue中props的使用详解
2018/06/15 Javascript
vue项目刷新当前页面的三种方法
2018/12/04 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
vue实现鼠标移过出现下拉二级菜单功能
2019/12/12 Javascript
js 动态校验开始结束时间的实现代码
2020/05/25 Javascript
js实现点击选项置顶动画效果
2020/08/25 Javascript
vue中echarts的用法及与elementui-select的协同绑定操作
2020/11/17 Vue.js
Python常见文件操作的函数示例代码
2011/11/15 Python
python实现从字符串中找出字符1的位置以及个数的方法
2014/08/25 Python
python 简单的多线程链接实现代码
2016/08/28 Python
Python3学习urllib的使用方法示例
2017/11/29 Python
Django 接收Post请求数据,并保存到数据库的实现方法
2019/07/12 Python
升级keras解决load_weights()中的未定义skip_mismatch关键字问题
2020/06/12 Python
pytorch查看模型weight与grad方式
2020/06/24 Python
Canvas实现保存图片到本地的示例代码
2018/06/28 HTML / CSS
英国剑桥包官网:The Cambridge Satchel Company
2016/08/01 全球购物
台湾SHOPRO购物行家:亚洲首创影视.3C.家电.优质购物平台
2018/05/07 全球购物
自荐信写法介绍
2014/01/25 职场文书
专题组织生活会思想汇报
2014/10/01 职场文书
实习护士自荐信
2015/03/25 职场文书
欢送会主持词
2015/07/01 职场文书
铁拳制作人赞《铁拳7》老头环Mod:制作精良 但别弄了
2022/04/03 其他游戏