ThinkPHP中ajax使用实例教程


Posted in PHP onAugust 22, 2014

本文实例讲述了ThinkPHP中使用ajax的方法,提交表单如下图所示:

ThinkPHP中ajax使用实例教程

点击提交,不需要刷新本页,将内容提交到数据库当中,并在本页显示提交的内容。如下图所示:

ThinkPHP中ajax使用实例教程

一、jquery实现方法:

MessageAction.class.php页面代码如下:

<?php
class MessageAction extends Action{
 
 function index(){
  $this->display(); 
 }
 
 function add(){
  //ajaxReturn(数据,'提示信息',状态) 
  $m=M('message');
  if($m->add($_GET)){
   $this->ajaxReturn($_GET,'添加信息成功',1);
  }else{
   $this->ajaxReturn(0,'添加信息失败',0); 
  }
 }
 
}
?>

模板index.html代码如下:

<html>
<head>
<script type="text/javascript" src="__PUBLIC__/js/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
 $(function(){
  $('input:button').click(function(){
   var $title=$('input[name="title"]').val();
   var $message=$('input[name="message"]').val();
   $mess=$('#mess');
   $.getJSON('__URL__/add',{title:$title,message:$message},function(json){
    //alert(json);return false;
    if(json.status==1){
     $mess.slideDown(3000,function(){
      $mess.css('display','block'); 
     }).html('标题为'+json.data.title+'信息为'+json.data.message); 
    }else{
     $mess.slideDown(3000,function(){
      $mess.css('display','block'); 
     }).html('信息添加失败,请检查'); 
    }  
   });
  }) 
 })
</script>
</head>
<body>
<div style="display:none; color:red;" id="mess"></div>
<form action="" method="get">
 标题:<input type="text" name="title" /><br />
 信息:<input type="text" name="message" /><br />
  <input type="button" value="提交" />
</form>
</body>
</html>

二、ThinkPHP实现方法:

MessageAction.class.php页面代码如下:

<?php
class MessageAction extends Action{
 
 function index(){
  $this->display(); 
 }

 function addtwo(){
  $m=M('message');
  if($vo=$m->create()){
   if($m->add()){
    $this->ajaxReturn($vo,'添加成功',1); 
   }else{
    $this->ajaxReturn(0,'添加失败',0); 
   } 
  }else{
   $this->error($m->getError()); 
  }
 }
}
?>

模板index.html代码如下:

<html>
<head>
<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/ThinkAjax.js"></script>
<script type="text/javascript">
 function add(){
  //ThinkAjax.sendForm(表单ID,URL,回调函数,信息显示的地方);
  ThinkAjax.sendForm('frm','__URL__/addtwo',wc); 
 }
 function wc(data,status){
  if(status!=1){
   alert('发送失败');
  }else{
   $('list').innerHTML+='标题'+data.title+',信息'+data.message; 
  } 
 }
</script>

</head>
<body>
<div id="list"></div>
<form action="" method="POST" id="frm">
 标题:<input type="text" name="title" /><br />
 信息:<input type="text" name="message" /><br />
  <input type="button" value="提交" onClick="add()" />
</form>
</body>
</html>

感兴趣的朋友可以测试运行一下本文所示实例,可以加深对Ajax应用的理解。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
透析PHP的配置文件php.ini
Oct 09 PHP
动态生成gif格式的图像要注意?
Oct 09 PHP
探讨各种PHP字符串函数的总结分析
Jun 05 PHP
PHP实现获取域名的方法小结
Nov 05 PHP
PHP使用xmllint命令处理xml与html的方法
Dec 15 PHP
win7系统配置php+Apache+mysql环境的方法
Aug 21 PHP
php需登录的文件上传管理系统
Mar 21 PHP
WordPress中设置Post Type自定义文章类型的实例教程
May 10 PHP
nginx下安装php7+php5
Jul 31 PHP
php处理静态页面:页面设置缓存时间实例
Jun 22 PHP
PHP魔术方法之__call与__callStatic使用方法
Jul 23 PHP
PHP PDOStatement::setFetchMode讲解
Feb 03 PHP
ThinkPHP中的常用查询语言汇总
Aug 22 #PHP
ThinkPHP多语言支持与多模板支持概述
Aug 22 #PHP
ThinkPHP中的三大自动简介
Aug 22 #PHP
PHP实现克鲁斯卡尔算法实例解析
Aug 22 #PHP
php中限制ip段访问、禁止ip提交表单的代码分享
Aug 22 #PHP
destoon出现验证码不显示时的紧急处理方法
Aug 22 #PHP
PHP中new static()与new self()的区别异同分析
Aug 22 #PHP
You might like
详解PHP显示MySQL数据的三种方法
2008/06/05 PHP
比较简单实用的PHP无限分类源码分享(思路不错)
2011/10/13 PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
php mail to 配置详解
2014/01/16 PHP
session 加入redis的实现代码
2016/07/15 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
2016/12/05 PHP
jquery ajax执行后台方法
2010/03/18 Javascript
jquery 事件对象属性小结
2010/04/27 Javascript
用JS判断IE版本的代码 超管用!
2011/08/09 Javascript
JavaScript判断textarea值是否为空并给出相应提示
2014/09/04 Javascript
TypeScript入门-接口
2017/03/30 Javascript
深入理解vue-loader如何使用
2017/06/06 Javascript
vue 中directive功能的简单实现
2018/01/05 Javascript
使用vuex的state状态对象的5种方式
2018/04/19 Javascript
使用electron将vue-cli项目打包成exe的方法
2018/09/29 Javascript
JS+CSS+HTML实现“代码雨”类似黑客帝国文字下落效果
2020/03/17 Javascript
JavaScript数组排序功能简单实现
2020/05/14 Javascript
[59:48]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第一场 1月26日
2021/03/11 DOTA
python微信公众号开发简单流程
2018/03/23 Python
Python中GeoJson和bokeh-1的使用讲解
2019/01/03 Python
Python实现直方图均衡基本原理解析
2019/08/08 Python
Sentry错误日志监控使用方法解析
2020/11/12 Python
如何用css3实现switch组件开关的方法
2018/02/09 HTML / CSS
ghd官网:英国ghd直发器品牌
2018/05/04 全球购物
Java语言程序设计测试题判断题部分
2013/01/06 面试题
消防器材管理制度
2014/01/28 职场文书
出国英文推荐信
2014/05/10 职场文书
群众对十八届四中全会的期盼
2014/10/17 职场文书
写给老婆的保证书
2015/02/27 职场文书
2015年“公民道德宣传日”活动方案
2015/05/06 职场文书
写给媳妇的检讨书
2015/05/06 职场文书
医院党建工作总结2015
2015/05/26 职场文书
2015教师个人师德工作总结
2015/10/23 职场文书
2016道德模范先进事迹材料
2016/02/26 职场文书
RestTemplate如何通过HTTP Basic Auth认证示例说明
2022/03/17 Java/Android
CSS 鼠标点击拖拽效果的实现代码
2022/12/24 HTML / CSS