当前位置: 首页 > news >正文

php ajax success,Ajax请求发送成功但不进success如何解决

本文主要为大家分享一篇Ajax请求发送成功但不进success的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧,希望能帮助到大家。

1.情况描述:ajax发送成功,后台也成功响应请求,并返回了json数据,通过chrome监听请求也可以看到响应的json数据,但是就是不进success方法,反而跑到error方法中了

前端:$.ajax({

type : "get",

data : {'dbId':node.dbId,'viewId':node.id,'date':new Date()},

url : "${ctp}/ViewOperate/ShowViewSql",

dataType : "json",

success : function(data){

console.log(data);

layer.alert(data,{

skin: 'layui-layer-molv'

});

}

error : function(data){

layer.alert("进入了error方法",{

skin: 'layui-layer-molv'

});

}

});

后端:@RequestMapping(value="/ShowViewSql",method=RequestMethod.GET)

@ResponseBody

public String showCreateViewSql(@RequestParam(value="dbId",required=false)Integer dbId,

@RequestParam(value="viewId",required=false)Integer viewId) {

return "abc";

}

原因:后台返回的json数据是一个纯String类型的对象时,前端dataType属性设置为json后,会认为这个由String对象转换的json数据格式不是标准的json格式,所以就去执行error对应的方法了。

解决: 后端不用改,只需要把前端ajax请求中的dataType属性设置为text即可$.ajax({

type : "get",

data : {'dbId':node.dbId,'viewId':node.id,'date':new Date()},

url : "${ctp}/ViewOperate/ShowViewSql",

dataType : "text",

success : function(data){

console.log(data);

layer.alert(data,{

skin: 'layui-layer-molv'

});

}

error : function(data){

layer.alert("进入了error方法",{

skin: 'layui-layer-molv'

});

}

});

特殊情况:当后端返回的json数字是类似 “1”、”2”、”22”、”232123”、”-1”、 “232123.44” 数字字符串的时候,前端dataType属性设置为json时,也能正常进入success方法,原因不明。

相关推荐:

相关文章:

  • .net专家(张羿专栏)
  • ycmj.php,vim 编译YCM编译出错?求解决办法?
  • 开源代码专家 (胡争辉)
  • momo php framework,momo.php
  • 游戏开发专家 (孙丰国)
  • php工程师的段子,江湖上一些关于程序员的段子
  • Visual Basic专家:马畅
  • php足疗预约,足浴养生管理系统轻松实现各种线上预约功能?
  • mysql 点击,点击页面就自动输入到mysql.求解.
  • 感谢Katty
  • 双反馈直流matlab仿真,双闭环直流调速系统的课程设计(MATLAB仿真)
  • 关于dsp定时器同步需要注意的问题
  • golang mysql引入包,对Golang import 导入包语法详解
  • 发现一个好玩的开源项目
  • 用MATLAB拟合实验报告,MATLAB插值与拟合实验报告材料
  • FineReport中如何实现自动滚屏效果
  • java中具有继承关系的类及其对象初始化顺序
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • Python 反序列化安全问题(二)
  • python 装饰器(一)
  • SOFAMosn配置模型
  • Three.js 再探 - 写一个跳一跳极简版游戏
  • 多线程事务回滚
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 盘点那些不知名却常用的 Git 操作
  • 普通函数和构造函数的区别
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 前端学习笔记之观察者模式
  • 微信小程序:实现悬浮返回和分享按钮
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • (¥1011)-(一千零一拾一元整)输出
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (SpringBoot)第七章:SpringBoot日志文件
  • (非本人原创)我们工作到底是为了什么?​——HP大中华区总裁孙振耀退休感言(r4笔记第60天)...
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (附源码)计算机毕业设计大学生兼职系统
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • (转)程序员技术练级攻略
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .NET Framework .NET Core与 .NET 的区别
  • .NET 使用配置文件
  • .NET关于 跳过SSL中遇到的问题
  • .NET开源快速、强大、免费的电子表格组件
  • .NET框架
  • [<事务专题>]
  • [2669]2-2 Time类的定义
  • [ACM] hdu 1201 18岁生日
  • [bzoj 3534][Sdoi2014] 重建
  • [C#]C#学习笔记-CIL和动态程序集
  • [C#]手把手教你打造Socket的TCP通讯连接(一)