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,不用COM,生成excel文件
Oct 09 PHP
PHP中,文件上传
Dec 06 PHP
PHP求小于1000的所有水仙花数的代码
Jan 10 PHP
php实现的漂亮分页方法
Apr 17 PHP
php使用递归计算文件夹大小
Dec 24 PHP
PHP的引用详解
Feb 22 PHP
php轻量级的性能分析工具xhprof的安装使用
Aug 12 PHP
实例讲解yii2.0在php命令行中运行的步骤
Dec 01 PHP
Symfony模板的快捷变量用法实例
Mar 17 PHP
详解yii2使用多个数据库的案例
Jun 16 PHP
Laravel框架中自定义模板指令总结
Dec 17 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 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生成xml简单实例代码
2009/12/16 PHP
php编程实现获取excel文档内容的代码实例
2011/06/28 PHP
php无限极分类实现的两种解决方法
2013/04/28 PHP
解析php中获取系统信息的方法
2013/06/25 PHP
PHP中判断变量为空的几种方法小结
2013/11/12 PHP
符合W3C网页标准的iframe标签的使用方法
2007/07/19 Javascript
jquery中ajax学习笔记3
2011/10/16 Javascript
js字符编码函数区别分析
2011/12/28 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
2013/05/27 Javascript
js实现数组去重、判断数组以及对象中的内容是否相同
2013/11/29 Javascript
浅析jQuery1.8的几个小变化
2013/12/10 Javascript
Visual Studio中js调试的方法图解
2014/06/30 Javascript
jQuery+css实现的换页标签栏效果
2016/01/27 Javascript
JavaScript的设计模式经典之代理模式
2016/02/24 Javascript
js removeChild 方法深入理解
2016/08/16 Javascript
nodejs入门教程六:express模块用法示例
2017/04/24 NodeJs
Vue.js中数据绑定的语法教程
2017/06/02 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
React如何避免重渲染
2018/04/10 Javascript
微信小程序中进行地图导航功能的实现方法
2018/06/29 Javascript
详解angular应用容器化部署
2018/08/14 Javascript
mpvue+vuex搭建小程序详细教程(完整步骤)
2018/09/30 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
2019/06/26 Javascript
layui表格数据复选框回显设置方法
2019/09/13 Javascript
JavaScript实现10秒后再次获取验证码
2020/12/02 Javascript
python中requests模块的使用方法
2015/04/08 Python
Python的dict字典结构操作方法学习笔记
2016/05/07 Python
Python科学计算包numpy用法实例详解
2018/02/08 Python
python正向最大匹配分词和逆向最大匹配分词的实例
2018/11/14 Python
Python实现个人微信号自动监控告警的示例
2019/07/03 Python
django 自定义过滤器(filter)处理较为复杂的变量方法
2019/08/12 Python
Pycharm小白级简单使用教程
2020/01/08 Python
CSS3哪些新特性值得称赞
2016/03/02 HTML / CSS
农村改厕实施方案
2014/03/22 职场文书
教师党员承诺书2015
2015/01/21 职场文书
2016年会开场白台词
2015/06/01 职场文书