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 相关文章推荐
文章推荐系统(三)
Oct 09 PHP
PHP 数据结构 算法描述 冒泡排序 bubble sort
Jul 10 PHP
php入门学习知识点五 关于php数组的几个基本操作
Jul 14 PHP
php数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
Nov 07 PHP
PHP Error与Logging函数的深入理解
Jun 03 PHP
ThinkPHP实现递归无级分类――代码少
Jul 29 PHP
php安装ssh2扩展的方法【Linux平台】
Jul 20 PHP
phpinfo()中Loaded Configuration File(none)的解决方法
Jan 16 PHP
IOS 开发之NSDictionary转换成JSON字符串
Aug 14 PHP
PHP实现微信对账单处理
Oct 01 PHP
php数组指针函数功能及用法示例
Feb 11 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 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
Extended CHM PHP 语法手册之 DIY
2006/10/09 PHP
PHP5 安装方法
2006/10/09 PHP
使用session判断用户登录用户权限(超简单)
2013/06/08 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
PHP实现自动发送邮件功能代码(qq 邮箱)
2017/08/18 PHP
取得一定长度的内容,处理中文
2006/12/20 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
extjs 如何给column 加上提示
2014/07/29 Javascript
jQuery弹出层插件Lightbox_me使用指南
2015/04/21 Javascript
干货分享:让你分分钟学会javascript闭包
2015/12/25 Javascript
Ajax使用原生态JS验证用户名是否存在
2020/05/26 Javascript
微信小程序 解决swiper不显示图片的方法
2017/01/04 Javascript
jQuery操作DOM_动力节点Java学院整理
2017/07/04 jQuery
javascript中神奇的 Date对象小结
2017/10/12 Javascript
Vue源码解析之Template转化为AST的实现方法
2018/12/14 Javascript
解决Layui 表格自适应高度的问题
2019/11/15 Javascript
python使用reportlab实现图片转换成pdf的方法
2015/05/22 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
Python对字符串实现去重操作的方法示例
2017/08/11 Python
Python排序搜索基本算法之归并排序实例分析
2017/12/08 Python
Python 处理图片像素点的实例
2019/01/08 Python
使用python实现数组、链表、队列、栈的方法
2019/12/20 Python
Python如何转换字符串大小写
2020/06/04 Python
澳大利亚在线购买儿童玩具:Toy Universe
2017/12/28 全球购物
ZINVO手表官网:男士和女士手表
2019/03/10 全球购物
Nike墨西哥官网:Nike MX
2020/08/30 全球购物
linux面试题参考答案(5)
2016/11/05 面试题
加拿大留学自荐信
2014/01/28 职场文书
《小猫刮胡子》教学反思
2014/02/21 职场文书
集体婚礼策划方案
2014/02/22 职场文书
2014两会学习心得:榜样精神伴我行
2014/03/17 职场文书
吨的认识教学反思
2014/04/27 职场文书
四风问题查摆剖析材料
2014/10/11 职场文书
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
2021/04/17 Vue.js
Go 语言下基于Redis分布式锁的实现方式
2021/06/28 Golang
python计算列表元素与乘积详情
2022/08/05 Python