注:thinkphp使用ajax和之前使用ajax的方法一样,不同点在于之前的ajax中的url指向了一个页面,而thinkphp里面的url需要指向一个操作方法。

  1. 在模块控制器Controller文件夹里创建一个 AjaxController.class.php
  1. <?php
  2. namespace Admin\Controller;
  3. use think\Controller;
  4. class AjaxController extends Controller{
  5.  
  6. public function Ajax(){
  7. $this->show();//显示页面
  8. }
  9. public function ajaxchuli(){ //Ajax页面里的 url 指向的是这个方法
  10.  
  11. $n = D("Nation");
  12. $attr = $n->select();
  13. $this->ajaxReturn($attr);//ajax返回方法ajaxReturn();
  14. }
  15.  
  16. public function addajax(){
  17. $this->show();
  18. }
  19. public function addchuli(){ //addajax页面里的 url 指向的是这个方法
  20. $n = D("Nation");
  21. $n->create();//自动收集表单。。只要内容页面使用POST传值create()方法就很方便!
  22. $r = $n->add();//add()方法添加数据
  23. if($r){
  24.  
  25. $this->ajaxReturn("OK","eval");//使用TEXT传值这里就要加上exal 输出字符串data数据。
  26. }else{
  27. $this->ajaxReturn("ON","eval");
  28. }
  29. }
  30.  
  31. }

在模块视图(显示页面)View文件夹里先创建好Ajax文件夹(代表的是Ajax控制器),里面再创建Ajax.html页面(代表的是你自定义的方法)

  1. <html>
  2. <head>
  3. <meta content="text/html; charset=utf-8" />
  4. <script src="__PUBLIC__/js/jquery-1.11.2.min.js"> </script><!--jquery文件放在public/js里面。__PUBLIC__找到public目录-->
  5. </head>
  6. <body>
  7. <select id="nation">
  8.  
  9. </select>
  10. <script type="text/javascript">
  11. $.ajax({
  12. url:"__CONTROLLER__/ajaxchuli",//这里指向的是一个方法。
  13. data:{},
  14. dataType:"JSON",
  15. type:"POST",
  16. success: function(data){
  17. //alert(data[0].code);//这里要用索引,使用eq读取不出来数据。
  18. var str = "";
  19. for(a in data){
  20.  
  21. str = str+"<option value='"+data[a].code+"'>"+data[a].name+"</option>"
  22. }
  23. $("#nation").html(str);
  24. }
  25.  
  26. });
  27. </script>
  28. </body>
  29.  
  30. </html>

在模块视图(显示页面)View文件夹里先创建好Ajax文件夹(代表的是Ajax控制器),里面再创建addAjax.html页面(代表的是你自定义的方法)

  1. <html>
  2. <head>
  3. <meta content="text/html; charset=utf-8" />
  4. <script src="__PUBLIC__/js/jquery-1.11.2.min.js"></script>
  5. </head>
  6. <body>
  7. <div>代号:<input type="text" id="code" /></div>
  8. <div>名称:<input type="text" id="name" /></div>
  9. <div><input type="button" id="btn" value="添加" /></div>
  10. <script type="text/javascript">
  11.  
  12. $("#btn").click(function(){
  13. var code = $("#code").val();
  14. var name = $("#name").val();
  15. $.ajax({
  16. url:"__CONTROLLER__/addchuli",
  17. data:{Code:code,Name:name},
  18. dataType:"TEXT",
  19. type:"POST",
  20. success:function(data){
  21.  
  22. alert(data);
  23. }
  24.  
  25. });
  26. });
  27.  
  28. </script>
  29. </body>
  30.  
  31. </html>

ThinkPHP框架 【 AJAX方法返回 】 例子:简单添加一条数据 和 查询一个表里的数据的更多相关文章

  1. ThinkPHP框架 AJAX方法返回 AJAX实现分页例子:

    在模块控制器Controller文件夹里创建一个 FenyeController.class.php控制器 <?php namespace Admin\Controller; use Think ...

  2. Thinkphp框架 -- ajax无刷新上传图片

    用Thinkphp框架做无刷新上传图片 视图层 View <!doctype html> <html lang="en"> <head> < ...

  3. jquery中ajax方法返回的三种数据类型:text、json、xml;

    1.当dataType:"text"时,处理页面用的是DBDA类中的Strquery()方法,所以返回的数据是下面这样的,所以要对返回来的数据用split根据“|”和“^”来分割, ...

  4. ThinkPHP框架下,给jq动态添加的标签添加点击事件移除标签

    jq移除标签主要就是$("#要移除的id").remove();不再赘述,这里要提醒的是jq中动态添加标签后怎样添加点击事件.一般的jq添加点击事件是用这种方法$("#i ...

  5. mysql 如何用一条SQL将一张表里的数据插入到另一张表 3个例子

    1. 表结构完全一样 insert into 表1 select * from 表2  2. 表结构不一样(这种情况下得指定列名) insert into 表1 (列名1,列名2,列名3) selec ...

  6. thinkphp中AJAX返回ajaxReturn()方法分析

    本文分析了thinkphp中AJAX返回ajaxReturn()方法.分享给大家供大家参考,具体如下: 系统支持任何的AJAX类库,Action类提供了ajaxReturn方法用于AJAX调用后返回数 ...

  7. ajax的使用:(ajaxReturn[ajax的返回方法]),(eval返回字符串);分页;第三方类(page.class.php)如何载入;自动加载函数库(functions);session如何防止跳过登录访问(构造函数说明)

    一.ajax例子:ajaxReturn("ok","eval")->thinkphp中ajax的返回值的方法,返回参数为ok,返回类型为eval(字符串) ...

  8. thinkphp框架的相关总结

    参考链接地址:http://gongwen.sinaapp.com/article-205.html 1. 模板中不能使用的标签 {$content} {$i} 2. If标签 如: <if c ...

  9. Django框架----Ajax

    一.Ajax准备知识:json 说起json,我们大家都了解,就是python中的json模块,那么json模块具体是什么呢?那我们现在详细的来说明一下 1.json(Javascript  Obie ...

随机推荐

  1. CSS全局居中

    可见区域 垂直居中 top:$(document).scrollTop() + ($(document).height() - $(document).scrollTop())/2,

  2. eclipse maven 导出项目依赖的jar包

    转自:https://blog.csdn.net/andyliulin/article/details/46544555 一.导出到默认目录 targed/dependency 从Maven项目中导出 ...

  3. WPF应用程序exe接收参数

    using System;using System.ServiceProcess; namespace GoShopService{    public partial class Service1 ...

  4. 调用 setState 之后发生了什么?

    (1)代码中调用 setState 函数之后,React 会将传入的参数对象与组件当前的状态合并,然后触发所谓的调和过程(Reconciliation).(2)经过调和过程,React 会以相对高效的 ...

  5. 解决 Docker pull 出现的net/http: TLS handshake timeout 的一个办法

    echo "DOCKER_OPTS=\"\$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io\"&q ...

  6. Uber使用Swift重写APP的踩坑经历及解决方案(转载)

    本文出自Uber移动架构和框架组负责人托马斯·阿特曼于2016年在湾区Swift峰会上的演讲,分享了使用Swfit重写Uber的好与坏.以下为译文: 我是托马斯·阿特曼,目前是Uber移动架构和框架组 ...

  7. Mysql INSERT、REPLACE、UPDATE的区别

    用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的SELECT语句,另外一种就是更新语句,也叫做数据操作语句.言外之意,就是对数据进行修改.在标准的SQL中有3个语句,它们是INSE ...

  8. 从HTML Components的衰落看Web Components的危机 HTML Components的一些特性 JavaScript什么叫端到端组件 自己对Polymer的意见

    http://blog.jobbole.com/77837/ 原文出处: 徐飞(@民工精髓V) 搞前端时间比较长的同学都会知道一个东西,那就是HTC(HTML Components),这个东西名字很现 ...

  9. 解决python3 UnicodeEncodeError: 'gbk' codec can't encode character '\xXX' in position XX

    从网上抓了一些字节流,想打印出来结果发生了一下错误: UnicodeEncodeError: 'gbk' codec can't encode character '\xbb' in position ...

  10. (4) MySQL中EXPLAIN执行计划分析

    一. 执行计划能告诉我们什么? SQL如何使用索引 联接查询的执行顺序 查询扫描的数据函数 二. 执行计划中的内容 SQL执行计划的输出可能为多行,每一行代表对一个数据库对象的操作 1. ID列 ID ...