ThinkPHP中ajax提交数据
最近在做项目时遇到了一些需要从页面用ajax提交数据到后台的操作,无奈本人技术有限,网上苦寻,研究了一下ajax和thinkPHP的结合,黄天不负苦心人,终于搞定了。
闲话少叙,进入正题:我需要从页面中的一系列列表中,提交数据id到后台,然后从后台接收id数据,然后进行操作。
$.ajax({
type:"GET",
url:"__URL__/DelBatch",
data:{id:ids},
dataType: "json",
success:function(ss){
alert(ss);
}
});
参数解析:
type:表示请求的方式,post或get,默认为get。
url:数据所要提交到的url地址。
data:表示所要提交的数据。JSON格式(键值对)。代码中第一个id表示变量名,第二个ids表示具体的值,即第一个id变量所对应的值。
dataType:预期服务器返回的数据类型。若不指定,jquery将自动根据http包MIME信息来智能判断(w3c抄袭,具体不懂,大概是根据MIME的类型来返回值的类型)
success:请求成功后后调用的回调函数。
ajax请求数据还有很多参数,比如beforeSend、error等,大家若想详细了解可以上网去查。
有了这段代码,用户在执行点击等操作时就可以将数据以get的方式提交到后台。
后台数据接收:
function DelBatch(){
if(IS_GET)
{
$id=$_GET["id"];
$this->ajaxReturn($id);
}
}
thinkPHP中具有对请求类型进行判断的封装,其中具有对几种请求类型的判断:
IS_POST:判断是否是POST方式提交
IS_GET:判断是否是GET方式提交
IS_AJAX:判断是否是ajax方式提交
public function check(){
if(IS_GET){
//若是,执行响应操作
}
else{
$this->error("非法请求!");
}
}
在上述代码中,首先进行了请求类型的判断,若请求一致,则进行相应操作,否则,显示当前请求为非法请求。
插入一段,回到正题:
在后台接收数据时,首先同样进行了请求的判断。然后通过$id=$_GET["id"]得到页面提交过来的数据,然后进行数据返回。
ThinkPHP对ajax有很好的支持,系统\Think\Controller类中提供了ajaxReturn方法用于对ajax调用后返回数据给客户端,支持JSON,JSONP,XML和EVAL四种方式返回数据的类型。默认采用JSON格式返回数据。
开始做时,仅仅在方法中echo了一个数据出来,苦思半天,以为在提交数据时没有找到相应方法,其实不然,thinkPHP封装了ajaxReturn方法,专门用于将数据返回供页面使用。所以,在页面的success的function中接收到数据,然后将数据alert显示。

随笔一篇,记录一下,希望对大家有所帮助。
ThinkPHP中ajax提交数据的更多相关文章
- Django中Ajax提交数据的CSRF问题
错误信息: Forbidden (CSRF token missing or incorrect.): 什么是CSRF: django为用户实现防止跨站请求伪造的功能,通过中间件 django.mid ...
- thinkphp中ajax使用实例(thinkphp内置支持ajax)
thinkphp中ajax使用实例(thinkphp内置支持ajax) 一.总结 1.thinkphp应该是内置支持ajax的,所以请求类型里面才会有是否是ajax // 是否为 Ajax 请求 if ...
- ajax提交数据
ajax提交数据 注意:获取值可以从方法参数传过来 也可以通过jquery获取对应标签的值:同时参数要与请求的动作方法的参数一致,否则值无法映射 发送 ajax (get 方式简写)请求 注 ...
- thinkphp中AJAX返回ajaxReturn()方法分析
本文分析了thinkphp中AJAX返回ajaxReturn()方法.分享给大家供大家参考,具体如下: 系统支持任何的AJAX类库,Action类提供了ajaxReturn方法用于AJAX调用后返回数 ...
- jquery ajax提交数据给后端
大家好,今天铁柱兄给大家带一段jquery ajax提交数据给后端的教学. 初学javaweb的同学前端提交数据基本上都是用form表单提交,这玩意儿反正我是觉得不太好玩.而JavaScript aj ...
- 扩展auth_user字段、BBS需求分析、创建BBS数据库、注册页面搭建与用户头像展示及Ajax提交数据
昨日内容回顾 csrf跨站请求 1. SQL注入 2. xss攻击 3. csrf跨站请求 4. 密码加密(加盐) '''django中默认有一个中间件来验证csrf''' # 只针对post请求才验 ...
- form表单提交数据,页面必定会刷新,ajax提交数据不会刷新,做到悄悄提交,多选删除,ajax提交实例
很多页面用到的模态对话框,如知明网站https://dig.chouti.com/的登录页都是模态对话框, 当点登录时,是用的ajax提交,因为输入错了信息,有返回消息,而页面没有刷新. jquery ...
- 关于thinkphp中post提交空白的思考
关于thinkphp中post提交空白的思考 首选检查 目标路径是否存在 如果目标URL不存在 那肯定是空 如果提交的路径存储 TP这种完善的系统肯定会提示 各种报错了
- 第一百五十九节,封装库--JavaScript,表单序列化结合ajax提交数据
封装库--JavaScript,表单序列化结合ajax提交数据 封装库,表单序列化方法 /** xu_lie_biao_dan()方法,表单序列化方法,将自动获取指定表单里面的各项字段name值和va ...
随机推荐
- Apache-Tomcat 和 Apache-Maven配置
1.1.下载安装文件 官网对应版本下载,例:apache-tomcat-8.0.35-windows-x64.zip 1.2.指定对应的安装目录: 例:D:\JavaSoft\apache-tomca ...
- 【原】YUI3:js加载过程及时序问题
时序问题在javascript中比较常见,尤其是在网络环境不稳定时以及某些浏览器本来版本中比较多,遇到此类问题,往往会使开发者非常头痛,问题的重现需要特定的环境,是偶发的,不容易重现.对于有经验的开发 ...
- DTU软硬件方案
经过周末的思考以及已有的经验,准备将DTU研发项目命名为QN100,确定了初步的软硬件方案,产品名称大家如果有好的名字欢迎提供. 硬件: 采用STM32F101RD为主处理器, ...
- Windows 7安装教程(详细图解)
早前向大家介绍了Windows XP的安装教程,今天思齐再来介绍一下Windows 7的安装教程,Windows 7在安装上相对以前的Windows操作系统都要简单一些,这一点对于尤其是非专业用户来说 ...
- 《Android底层接口与驱动开发技术详解》digest
第一章:IDE:Eclipse ADT for java developer其它: Apache Ant Java SE Development Kit5或6 Linux和Mac上使用Apache A ...
- 大型项目使用Automake/Autoconf完成编译配置
http://www.cnblogs.com/xf-linux-arm-java-android/p/3590770.htmlhttp://blog.csdn.net/zengraoli/articl ...
- xrdp的rdp前端无法连接Windows 2008的问题
xrdp使用rdp前端,无法连接2008,但连接2003是可以的.连接2008的时候,会在客户端发送Client Info PDU后主动RST掉连接.如下图 开始以为是客户端发送Client Info ...
- 普林斯顿大学算法课 Algorithm Part I Week 3 自我总结
要熟练掌握比较器Comparator public final Comparator<T> MY_COMPARATOR = new myComparator(); //定义比较器 .... ...
- network is unreachable 解决方案之一
请按http://blog.csdn.net/oxiaoxio/article/details/41775183 一文中的设置方法设置:
- 使用扩展名获取mimetype
在Android中很多时候我们需要计算出文件的mimetype,而我们通常的思路就是通过扩展名来获取对应的mimetype,而如果自行处理,将维护一个比较大的映射表,而实际上大可不必,Android提 ...