Thinkphp学习日记:jQuery_ajax数据提交
来源:互联网 发布:网站后端性能优化 编辑:程序博客网 时间:2024/06/06 15:38
最近在玩Thinkphp,废话不多说,说正事.
客户端js提交代码
1 $.post('http://localhost/app/index.php/Index/Index/handle',{username : document.getElementById('username').value,content : document.getElementById('content').value,},function (data){console.log(data);alert('ok');});
主要是提交两个表单项的内容到handle,如果成功返回就执行function函数弹出一个ok
ps:这段代码不是标准的jQuery的写法,标准的应该是
$( 'input[name=username]' ).val()
$( '#username' ).val()
服务器端脚本
1 public function handle(){ 2 if (!isAJAX) { 3 halt('请求有误'); 4 5 } //else 6 // //echo '请求成功'; 7 // // var_dump(I('post.')); 8 $wi=M('wish'); 9 $data['wi_name']=I('username');10 $data['wi_content']=I('content');11 $data['wi_time']=time(); 12 $result=$wi->data($data)->add(); 13 // var_dump($result);14 if ($result) {15 // $this->success('插入成功');16 // $this->ajaxReturn('110','插入成功',1);17 $dataReturn['status']=1;18 $dataReturn['info']='the post is ok';19 $this->ajaxReturn($dataReturn,'json');20 }else{21 halt('插入失败');22 }23 24 }
但是数据提交成功,一直没有弹窗,也就是回调函数一直没有执行.找了半天,以为是json格式有问题,才知道是我注释的那段代码
//else // //echo '请求成功'; // // var_dump(I('post.'));
本来是为了更友好的提示,估计是把这个当成了返回值,然后因为客户端解析出问题,所以没有反应,把它注释掉就行了。
ps:今天又研究了下,发现应该是Thinkphp将echo的内容返回给了前端,而因为echo的内容不符合jQuery的格式,所以不能正常解析
所以我把echo的内容换成 echo "{ info : '1213', name : '4442'}";
然后,页面终于有反应了,用console.log(data),打印后内容是{ info : '1213', name : '4442'},不过不能识别是json格式
好吧,又发现新原因了,不是之前想的,如果后台用echo或者其他输出的话,Thinkphp会将它传到前台,当做这个Ajax请求的返回值,But如果你在后来再来一个$this->ajaxReturn($dataReturn,'json');,就会出错,不执行
0 4
- Thinkphp学习日记:jQuery_ajax数据提交
- ThinkPHP学习日记
- THINKPHP 5.0【学习日记】install
- JQUERY_AJAX
- jQuery_ajax
- jquery_Ajax
- Jquery_Ajax
- jquery_ajax
- jquery_ajax get()获得json数据
- ThinkPHP学习日记(知识点总结)
- Jquery_Ajax 注册验证(Struts2)<学习随笔>
- thinkphp 前台数据提交后往数据库内添加
- 学习日记-thinkphp 页面table id从1开始效果
- thinkphp 后台获取argularjs http提交的post数据
- THINKPHP限制今天提交的数据不超过几条
- 大数据学习日记day1
- 大数据学习日记day2
- thinkphp 学习之 CURD操作数据创建
- Object-C学习--类
- 简单方法vs工厂方法
- java 核心技术 第三章栗子 数组运用
- 《错误经历篇》cocos2dx项目运行报错,fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- android中实现定时器的几种方式
- Thinkphp学习日记:jQuery_ajax数据提交
- Linux高性能服务器编程——多线程编程(下)
- OpenEIM 完成了大二所有的课程 离工作的日子不远了
- 如何在Cygwin中安装并配置SSH
- HDOJ1166 敌兵布阵 【线段树】
- CentOS 6.5 Linux中为firefox安装FlashPlayer步骤
- SNMP Private Enterprise Number 申请流程
- ExtJS教程(5)---Ext.data.Model之高级应用
- 开闭原则