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

 更新时间:2011年12月19日 01:25:05   作者:   我要评论

ThinkPHP的官方文档没有给出ThinkAjax的使用方法,令很多初学者使用起来有些不便,今天学到这里,也碰到了很多问题,花时间深究下,做个学习笔记,希望能对初学者有帮助
准备工作:
① 首先要会使用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开发_小飞

相关文章

  • PHPStorm+XDebug进行调试图文教程

    PHPStorm+XDebug进行调试图文教程

    这篇文章主要为大家详细介绍了PHPStorm+XDebug进行调试图文教程,内容很丰富,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • php和mysql中uft-8中文编码乱码的几种解决办法

    php和mysql中uft-8中文编码乱码的几种解决办法

    对于乱码这个问题php开发者几乎都会有碰到过,我们下面主要是介绍了php文件乱码和页面乱码以及php mysql金沙国际官网连接时乱码解决方法
    2012-04-04
  • 详解PHP神奇又有用的Trait

    详解PHP神奇又有用的Trait

    这篇文章主要介绍了PHP神奇又有用的Trait,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • php输出指定时间以前时间格式的方法

    php输出指定时间以前时间格式的方法

    这篇文章主要介绍了php输出指定时间以前时间格式的方法,可实现输出指定时间以前的具体时间格式,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • PHP如何通过表单直接提交大文件详解

    PHP如何通过表单直接提交大文件详解

    这篇文章主要给大家介绍了关于PHP如何通过表单直接提交大文件的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • PHP实现图片压缩的两则实例

    PHP实现图片压缩的两则实例

    这篇文章主要介绍了PHP实现图片压缩的两则实例,很有实用价值,值得借鉴学习,需要的朋友可以参考下
    2014-07-07
  • PHP常用操作类之通信数据封装类的实现

    PHP常用操作类之通信数据封装类的实现

    PHP类的封装对于初学者来说是比较难懂的,下面这篇文章主要给大家介绍了关于PHP常用操作类之通信数据封装类实现的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来一起学习学习吧。
    2017-07-07
  • php如何调用webservice应用介绍

    php如何调用webservice应用介绍

    Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术,接下来将详细介绍php如何调用webservice,需要的朋友可以了解下
    2012-11-11
  • 浅析Apache中RewriteCond规则参数的详细介绍

    浅析Apache中RewriteCond规则参数的详细介绍

    Apache中 RewriteCond语句对于我来说一直是个难点,多次试图去把它搞明白,都没有结构,这次我终于算大概知道它的意思了
    2013-06-06
  • php模拟post上传图片实现代码

    php模拟post上传图片实现代码

    这篇文章主要为大家详细介绍了php模拟post上传图片实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06

最新评论