一、    
控制器中
public function add(){
$this->display();
}
    public function ajaxSave(){

        if(IS_AJAX){
echo '执行输入';
$model = M("tb_user");
$model->create();
$model->add();
echo '执行成功'; //这里会弹出一个框,把这两句一起输出
} }

view中

add.html

<!DOCTYPE html>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="__ROOT__/Common/jquery-1.8.3.min.js"></script> //引入jqery
<script>
$(function(){
$("#subFrom").click(function(){
//3个参数 js中的jq 获取所有的值 串行化 回调函数
$.post("{:U("index/ajaxSave")}",$("form").serialize(),function(data){
alert(data);
}) }); })
</script>
</head>
<body>
<form>
<input type="text" name="name" />
<input type="text" name="like_num" />
<input type="text" name="hobby" />
</form> <button id="subFrom">提交</button>
</body>
</html>

===========================================

===========================================

二、

控制器中写

 <?php
namespace Admin\Controller;
header("Content-type:text/html;charset=utf-8");
use Think\Controller;
class DataController extends Controller {
public function getAjax(){
if(IS_AJAX){ $data = 'ok'; //无
$this->ajaxReturn(['abcd'=>'abcd',"name"=>'zhangsan']);
}else{
echo 'hehe,不是AJAX请求'; }
} public function send(){ $this->display();
}
}

view

send.html

 <!DOCTYPE html>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src='__ROOT__/business/Admin/view/js/jquery-1.8.3.min.js'></script> //引入jqery
<script>
$(function(){
$("#getAjax").click(function(){
//不写这个‘’也行 也是3个参数
$.get("{:U("Admin/data/getajax",'','')}",null,function(data){
$("<div>"+data.name+"</div>").appendTo("body");
})
}); }); </script>
</head>
<body>
<div>TODO write content</div>
<ul>
<li>__ROOT__</li>
<li>__APP__</li>
<li>__MODULE__</li>
<li>__CONTROLLER__</li>
<li>__PUBLIC__</li>
<li>__SELF__</li>
</ul> <button id='getAjax'>点击请求</button> //点击后,在后面添加 刷新后就没了
</body>
</html>

三、其他

手册的方法

//调用这个方法
public function send(){

 $data = 'ok';  //浏览器返回 "ok"

$data = ['abcd'=>'abcd',"name"=>'zhangsan'];      //浏览器返回  {"abcd":"abcd","name":"zhangsan"}

$this->ajaxReturn($data);
}

$this->ajaxReturn($data,xml); //返回下面的

<think>
<abcd>abcd</abcd>
<name>zhangsan</name>
</think>

-------------------------------------------------------

TP中讲的两种ajax方法的更多相关文章

  1. 两种Ajax方法

    两种Ajax方法 Ajax是一种用于快速创建动态网页的技术,他通过在后台与服务器进行少量的数据交换,可以实现网页的异步更新,不需要像传统网页那样重新加载页面也可以做到对网页的某部分作出更新,现在这项技 ...

  2. 【转载】JAVA中线程的两种实现方法-实现Runnable接口和继承Thread类

    转自: http://blog.csdn.net/sunguangran/article/details/6069317 非常感谢原作者,整理的这么详细. 在java中可有两种方式实现多线程,一种是继 ...

  3. HTML中label的两种使用方法

    如果您在 label 元素内点击文本,就会触发此控件.就是说,当用户选择该标签时,浏览器就会自动将焦点转到和标签相关的表单控件上. 有两种使用方法: 方法1: <label for=" ...

  4. JavaScript中数组的两种排序方法详解(冒泡排序和选择排序)

    一.冒泡排序的原理(从小到大) 相邻两个数进行比较,如果前一个数大于后一个数,那么就交换,否则不交换 原理剖析 比如有一组含有6个数字的数:5.3.7.2.1.6一共6个数字,做5次循环,每次循环相邻 ...

  5. 两种ajax的方法

    两种Ajax方法 Ajax是一种用于快速创建动态网页的技术,他通过在后台与服务器进行少量的数据交换,可以实现网页的异步更新,不需要像传统网页那样重新加载页面也可以做到对网页的某部分作出更新,现在这项技 ...

  6. JS中的两种刷新方法以及区别和适用范围

    在项目中有一个人信息修改的页面,但是修改后显示的却是修改之前的内容,分析问题后发现查询语句写在了修改语句之前,有些某些需要又必须这么写,但是修改信息后先却显示之前的信息也太不科学了. 所以我就想用js ...

  7. jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)

    在asp.net webForm开发中,用Jquery ajax调用aspx页面的方法常用的有两种:下面我来简单介绍一下. [WebMethod] public static string SayHe ...

  8. C#中的两种debug方法

    这篇文章主要介绍了C#中的两种debug方法介绍,本文讲解了代码用 #if DEBUG 包裹.利用宏定义两种方法,需要的朋友可以参考下   第一种:需要把调试方法改成debug代码用 #if DEBU ...

  9. Linux系统中存储设备的两种表示方法

    转:https://blog.csdn.net/holybin/article/details/38637381 一.对于IDE接口的硬盘的两种表示方法: 1.IDE接口硬盘,对于整块硬盘的两种表示方 ...

随机推荐

  1. macOS 简单使用

    在macOS下进行开发,首先要能够熟练的使用macOS系统. 图形界面和触摸板的操作,时间长了自然就会熟悉,也会发现很好用. 关于快捷键有几点注意一下: Windows下好多跟ctrl结合的快捷键(如 ...

  2. C# RSACryptoServiceProvider加密解密签名验签和DESCryptoServic

    C#在using System.Security.Cryptography下有 DESCryptoServiceProvider RSACryptoServiceProvider DESCryptoS ...

  3. Oracle常用的OCI函数

    一. Oracle oci工具包安装: $ORACLE_HOME\BIN:执行文件和help文件 $ORACLE_HOME\OCI\INCLUDE:头文件 $ORACLE_HOME\OCI\LIB\B ...

  4. centos 下安装python3.6.2

    具体详情: http://www.cnblogs.com/vurtne-lu/p/7068521.html

  5. 20145240 《Java程序设计》第四周学习总结

    20145240 <Java程序设计>第四周学习总结 教材学习内容总结 6.1继承 6.1.1 继承共同行为 定义:继承基本上就是避免多个类间重复定义共同行为. 优点:1.提高了代码的复用 ...

  6. Kubernetes Resource Qoutas

    配置参数: spec.containers[].resources.limits.cpu spec.containers[].resources.limits.memory spec.containe ...

  7. Could not fetch URL https://pypi.org/simple/pip/: There was a problem confir

    这个问题其实是无意中解决的:因为在网上找不到解决办法,是我在yum -y installl wget后,自动就好了,安装wget的时候,可能更新了openssl的缘故吧.

  8. HDFS数据复本存放

    复本怎么放Hadoop的默认布局策略是在运行客户端的节点上放第一个复本(如果客户端运行在容器之外,就随机选择一个节点,不过系统会避免挑选那些存储太满或太忙的节点).第二个复本放在与第一个不通且随机另外 ...

  9. vue中编辑代码是不注意格式时会报错

    1.是因为我们使用了eslint的代码规范,我们不要使用这种规范就好 2.在build目录下找到webpack.base.conf.js 在里面找到关于eslint的相关配置注释或移除掉就好

  10. volist/foreach下,点击循环中的一个进行操作

    第一种方法,是给点击元素绑定事件,用ajax将值传到控制器中,其中传的值,用jquery选择器选择值. 1.在html中 <foreach name="save" item= ...