thinkphp3.0中ajax的发送
要使用ThinkPHP的ajaxReturn方法返回数据的话,需要遵守一定的返回数据的格式规范。
status | 操作状态 |
info | 提示信息 |
data | 返回数据 |
调用示例:
- $this->ajaxReturn(返回数据,提示信息,操作状态);
返
回数据data可以支持字符串、数字和数组、对象,返回客户端的时候根据不同的返回格式进行编码后传输。如果是JSON格式,会自动编码成JSON字符
串,如果是XML方式,会自动编码成XML字符串,如果是EVAL方式的话,只会输出字符串data数据,并且忽略status和info信息。
下面是一个简单的例子:
- $User = M("User"); // 实例化User对象
- $result = $User->add($data);
- if ($result){
- // 成功后返回客户端新增的用户ID,并返回提示信息和操作状态
- $this->ajaxReturn($result,"新增成功!",1);
- }else{
- // 错误后返回错误的操作状态和提示信息
- $this->ajaxReturn(0,"新增错误!",0);
- }
注意,确保你是使用AJAX提交才使用ajaxReturn方法。
在客户端接受数据的时候,根据使用的编码格式进行解析即可。
- public function ajaxAssign(&$result) {
- // 返回数据中增加url属性
- $result['url'] = $this->url;
- }
3.1版本以后,ajaxReturn方法可以更加灵活的进行ajax传值,并且废弃了ajaxAssign方法扩展。能够完全定义传值的数组和类型,例如:
- $data['status'] = 1;
- $data['info'] = 'info';
- $data['size'] = 9;
- $data['url'] = $url;
- $this->ajaxReturn($data,'JSON');
data传值数组可以随意定义。
改进后的ajaxReturn方法也兼容之前的写法:
- $this->ajaxReturn($data,'info',1);
系统会自动把info和1两个参数并入$data数组中,等同于赋值
- $data['info'] = 'info';
- $data['status'] = 1;
thinkphp3.0中ajax的发送的更多相关文章
- 用ASP.NET Core 1.0中实现邮件发送功能
准备将一些项目迁移到 asp.net core 先从封装类库入手,在遇到邮件发送类时发现在 asp.net core 1.0中并示提供SMTP相关类库,于是网上一搜发现了MailKit 好东西一定要试 ...
- vue中ajax请求发送
示例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8& ...
- 用ASP.NET Core 1.0中实现邮件发送功能-阿里云邮件推送篇
在上篇中用MailKit实现了Asp.net core 邮件发送功能,但一直未解决阿里云邮件推送问题,提交工单一开始的回复不尽如人意,比如您的网络问题,您的用户名密码不正确等,但继续沟通下阿里云客户还 ...
- 在thinkphp5.0中调用ajax时, 返回的JSON 格式数据在html前台不能用时
在thinkphp5.0中调用ajax时,如果控制器返回的数据为json格式,视图层接收到返回值即为json格式的数据,此时应该把 JSON 文本转换为 JavaScript 对象,方便调用.具体代码 ...
- 8.0后广播在AndroidManifest.xml中注册后发送intent接收不到广播
8.0后广播在AndroidManifest.xml中注册后发送intent是接收不到广播了,看了一下原因,好像是8.0为了管理系统和节约电量特别针对广播和服务发送intent的方式启动做出的改变,也 ...
- jquery中ajax的简单使用
一.load() 这是最简单的一个函数,传入一个url他会异步加载该url的内容,然后将内容插入每一个选中的元素中,替换掉其中已经存在的内容. 所以最简单的用法是: $("#myDiv&qu ...
- Ajax详解及其案例分析------如何获得Ajax对象,使用Ajax对象发送GET和POST请求,校验用户名,POST和GET请求时的乱码处理,实现级联的下拉列表
本节主要内容预览: 1 获得Ajax对象 2 使用Ajax对象发送GET请求 3 使用Ajax对象发送POST请求 4 使用Ajax校验用户名 5 POST请求时的乱码处理 6 GET请求时的乱码处理 ...
- 关于Jquery中ajax方法data参数用法的总结
data 发送到服务器的数据.将自动转换为请求字符串格式.GET 请求中将附加在 URL 后.查看 processData 选项说明以禁止此自动转换.必须为 Key/Value 格式.如果为数组,jQ ...
- [转]Jquery中AJAX错误信息调试参考
下面是Jquery中AJAX参数详细列表: 参数名 类型 描述 url String (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求 ...
随机推荐
- Map中object转换成boolean类型
Ajax请求查询数据之后,返回的是map类型, resultMap.put("flag", flag); 在接收到数据之后判断时,转换出现异常,导致页面点击按钮之后,页面没有反应, ...
- tar软件安装
安装tar ./configure make sudo make install
- php5.6 连接SQL SERVER
PHP Fatal error: Call to undefined function sqlsrv_connect() in php链接sqlserver出现该错误: 原因是:php5.3 及以上版 ...
- poj 1573 Robot Motion【模拟题 写个while循环一直到机器人跳出来】
...
- MapReduce-多个Mapper
MapReduce的多输入.多mapper 虽然一个MapReduce作业的输入可能包含多个输入文件(由文件glob.过滤器和路径组成),但所有文件都由同一个InputFormat和同一个Mapper ...
- Shell脚本报错--syntax error near unexpected token for((i=0;i<$length;i++))
现象: shell脚本使用Nodepad++进行本地编辑,在编辑后上传到linux机器进行执行时提示“syntax error near unexpected token for((i=0;i< ...
- 最全面的linux信号量解析
信号量 一.什么是信号量 信号量的使用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程) 所拥有. 信号量的值为正的时候,说明它空闲.所测试的线程可以锁定而使用它.若为0,说明 它被占用, ...
- 总结django知识点
一.视图函数: 请求对象-----------request: 1.HttpRequest.body: 请求原数据 2.HttpRequ ...
- java实现二进制的加法
先看打印结果在看代码比较好理解.结果在最下面的位置. 总结:讲解了二进制的按位异域.按位与.左移的运算规则.并通过次3种算法得到2个数相加的结果.二进制应该还有其他算法,由于知识浅薄就不知道了. 代码 ...
- 0.00-050613_head.s
# head.s contains the -bit startup code. # Two L3 task multitasking. The code of tasks are in kernel ...