ajax成功进入success但是获取不到返回值

一、前言       最近做前端的时候,发现个奇怪的问题,ajax获取不到返回值了,问题是还是会到success中,也是可以正常打印的,就是没有response,奇怪。 二、正文 1、首先是不走success的问题       不走success且请求是200的话,大部分都是返回值的类型有问题,dateType定义是json,但返回的不是json,修改datetype即可。 2、走success,但是获取不到返回值       去掉dateType之后,走success了,但是没有返回值。这部分查找各种资料都没发现,后面发现是调用方式的问题,普通的ajax请求,访问控制器之后,控制器中的内容直接return即可,但是有一种情况是例外: 控制器: public function index(){ test::parseData(KaTeX parse error: Expected 'EOF', got '}' at position 11: this) }̲ 1 2 3 4 5     …controller) { echo json_encode($data); } 1 2 3 4 使用echo的时候,就能获取到返回值了。 三、其他问题 1、点击ajax提交,F12查看发现有三个请求 (1) 首先是查看form表单的action部分,还有是否定义onsubmit()方法,定义的话点击提交也会调用这个方法。 (2) 查看提交按钮的type是button还是submit,submit的话会自动提交表单,要修改为button,然后调用js进行提交。 2、去掉onsubmit方法,并且修改按钮为button之后,还有两个请求 这个就比较奇怪了,F12点击network,点击Doc发现只有一个请求,但是点击XHR发现有两个请求。代表实际的请求是只有一个的,但是有个js提交的空请求。 (1) 首先是检查form表单外面是否包含有a标签,a标签的href是否有值,最好是去掉href (2) 采用ajax提交表单的话,去掉form的action,哪怕action=’'都不行,我这里是因为这个action出错 (3) 有个类似的问题,可以参考:https://www.cnblogs.com/Simcoder/archive/2011/12/01/2270256.html       不管是a标签的href还是img的src都是http请求,不同浏览器对于这两个属性有不同的方案,firefox浏览器运行时,检查到src=""的img,会自动将src赋值为iis站点设置中的默认页.index.aspx 参考:https://www.cnblogs.com/Simcoder/archive/2011/12/01/2270256.html 3、表单的serializeArray()方法取不到disabled的元素? 答案: (1)serializeArray()之前把元素的形态改回来。 (2)设置元素为readonly(如果符合应用情景的话)

你可能感兴趣的:(ajax成功进入success但是获取不到返回值)