TP中讲的两种ajax方法
一、
控制器中
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); //返回下面的
-------------------------------------------------------
TP中讲的两种ajax方法的更多相关文章
- 两种Ajax方法
两种Ajax方法 Ajax是一种用于快速创建动态网页的技术,他通过在后台与服务器进行少量的数据交换,可以实现网页的异步更新,不需要像传统网页那样重新加载页面也可以做到对网页的某部分作出更新,现在这项技 ...
- 【转载】JAVA中线程的两种实现方法-实现Runnable接口和继承Thread类
转自: http://blog.csdn.net/sunguangran/article/details/6069317 非常感谢原作者,整理的这么详细. 在java中可有两种方式实现多线程,一种是继 ...
- HTML中label的两种使用方法
如果您在 label 元素内点击文本,就会触发此控件.就是说,当用户选择该标签时,浏览器就会自动将焦点转到和标签相关的表单控件上. 有两种使用方法: 方法1: <label for=" ...
- JavaScript中数组的两种排序方法详解(冒泡排序和选择排序)
一.冒泡排序的原理(从小到大) 相邻两个数进行比较,如果前一个数大于后一个数,那么就交换,否则不交换 原理剖析 比如有一组含有6个数字的数:5.3.7.2.1.6一共6个数字,做5次循环,每次循环相邻 ...
- 两种ajax的方法
两种Ajax方法 Ajax是一种用于快速创建动态网页的技术,他通过在后台与服务器进行少量的数据交换,可以实现网页的异步更新,不需要像传统网页那样重新加载页面也可以做到对网页的某部分作出更新,现在这项技 ...
- JS中的两种刷新方法以及区别和适用范围
在项目中有一个人信息修改的页面,但是修改后显示的却是修改之前的内容,分析问题后发现查询语句写在了修改语句之前,有些某些需要又必须这么写,但是修改信息后先却显示之前的信息也太不科学了. 所以我就想用js ...
- jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
在asp.net webForm开发中,用Jquery ajax调用aspx页面的方法常用的有两种:下面我来简单介绍一下. [WebMethod] public static string SayHe ...
- C#中的两种debug方法
这篇文章主要介绍了C#中的两种debug方法介绍,本文讲解了代码用 #if DEBUG 包裹.利用宏定义两种方法,需要的朋友可以参考下 第一种:需要把调试方法改成debug代码用 #if DEBU ...
- Linux系统中存储设备的两种表示方法
转:https://blog.csdn.net/holybin/article/details/38637381 一.对于IDE接口的硬盘的两种表示方法: 1.IDE接口硬盘,对于整块硬盘的两种表示方 ...
随机推荐
- iOS 点击注释图标 弹出对应解释
需求:如题目 接上一篇的开发内容 效果图: 这种情况存在tableView 的一个cell中. 要点 1, 弹出的对应解释 要在可视区域,并且小尖角 要指着 图片 2, 文本不能过高 有极大高度 ...
- 个人对于css sprite的一点点见解
css sprite即CSS雪碧图又称CSS精灵.它存在的一个主要作用就是:减少了网页的http请求次数,从而大大的提高了页面的性能,节省时间和带宽. 例如 这样算下来.CSS sprite真的是个很 ...
- CSS3 3D旋转下拉菜单
在线演示 本地下载
- K8s + Flannel 网络架构图
这是Flannel官网给出的网络架构图 这是通过自己的理解画的逻辑结构图 查看bridge [root@node01 ~]# brctl show bridge name bridge id STP ...
- ibecon后台运行
程序被硬关闭后,只能执行这三个回调,而且必须写在appdelegate中,退出ibeacons信息区域时会有延时10秒左右,进入时无延时 - (void)locationManager:(CLLoca ...
- python的pexpect详解
Pexpect 是一个用来启动子程序并对其进行自动控制的纯 Python 模块. Pexpect 可以用来和像 ssh.ftp.passwd.telnet 等命令行程序进行自动交互.继第一部分< ...
- qq在线客服代码
http://wpa.qq.com/msgrd?v=3&uin=1456262869&site=www.cactussoft.cn&menu=yes
- 如何检查BioPerl是否正确安装
如果是Linux系统,随意打开一个终端:如果用的是Windows系统,那么打开命令提示符. 输入以下命令: perldoc Bio::SeqIO 以上命令的作用是查看Bio::SeqIO模块的文档是否 ...
- Bluetooth Profile for iPhone from the functional perspectives
Classic Bluetooth Profile for iPhone from the functional perspectives Function Description BT Profil ...
- HDU 汉诺塔系列
做了这一系列题,表示对汉诺塔与这一系列递推理解加深了 经典汉诺塔:1,2,...,n表示n个盘子,数字大盘子就大,n个盘子放在第1根柱子上,按照从上到下 从小到大的顺序排放,过程中每次大盘都不能放在小 ...