零星网络

技术&资讯
网站超市

需要前后台演示请留言,或QQ:150623477联系站长。

本成品是基于ASP+Access开发的网站内容管理系统,提供了简介类模块,新闻类模块,产品类模块,图片类模块,下载类模块
· 适用性:充分考虑公司企业的实际需要,确保功能上较强的实用性。
· 易用性:用户界面简洁、美观、友好,易于用户操作和使用,操作人员只需简单学习即可掌握。
· 安全性:安全可靠的权限划分,既考虑信息的共享,又注意信息的保护与隔离。

JQUERY 您的当前位置:首页 > 技术&资讯 > JQUERY

jquery的ajax提交状态200正常却直接到error的问题解决方法

发布时间:2017-04-13  浏览次数:  分享到:
最近遇到一个问题,发送一个ajax请求,请求成功了,并且放回状态为200,但是就是不进入success事件,添加error事件竟进入了error事件。
 
代码如下:
$.ajax({  
    url:$WEB_ROOT_PATH+"/dataLevel/dataLevelCtrl.htm?BLHMI=findBasicDataLevel",  
    type:"post",  
    dataType:"json",  
    async:false,  
    success:function(data){  
        var dataScore = data;  
    },error:function(){  
        alert("出错啦!");  
    }  
});  
 
出错原因:dataType:"json",而后台返回的数据不符合json规范。
解决方法:先将dataType设置为text,这样就可以进入success方法了,查看data数据究竟是什么。
我的data为:{"success":success},可以看出第二个success没有引号包裹,不符合json规范,故而不能转换为json对象。
之后的解决方法就很好办了。一种是修改后台返回值,二种是直接解析text返回的值。
 
=======================================================
 
1、在弄腾讯地图(好吧弄别人家的api是很容易遇到各种问题)的时候,用了一天把示例搬到自己的页面调好后,发现用ajax提交报error了,看了返回,status 200,数据也都正常,百度了一下,参照建议把dataType由json改成了text,程序成功进入了success,然后用data = JSON.stringify(data);把数据转换一下,一切正常了。
2、出于好奇,又百度了一下,发现了另外一种解决方案:
在ajax中加入下面的参数
contentType: 'application/json',
 
 
代码片段(2) [全屏查看所有代码]
1. [代码]第一种:dataType:"text"     
$.ajax({
    type : 'post',
    dataType : 'text',
    url : '/main/BdShop/postLoc',
    data : {
        latitude : data.latlng.lat,
        longitude : data.latlng.lng,
        address : data.poiaddress
    },
    success : function(data){
        data = JSON.stringify(data);
        if(data.code==1){
            $(".invite").hide();
            window.location.href = "/Main/BdShop/location";
        }else{
            console.log(data);
            alert(data.errMsg);
        }
    },
    error : function(data){
        console.log('网络异常');
    }
});
2. [代码]第二种:contentType: 'application/json',     
$.ajax({
    type : 'post',
    dataType : 'json',
    contentType: 'application/json',
    data : {
        latitude : data.latlng.lat,
        longitude : data.latlng.lng,
        address : data.poiaddress
    },
    url : '/main/BdShop/postLoc',
    success : function(data){
        if(data.code==1){
            $(".invite").hide();
            window.location.href = "/Main/BdShop/location";
        }else{
            console.log(data);
            alert(data.errMsg);
        }
    },
    error : function(){
        alert('网络异常');
    }
});
 
 

相关评论

    评论加载中...
    评论者:     验证码:
        

首页|网站超市|业界|营销|优化|HTML|JS|JQUERY|DIV+CSS|编程|运营|设计排版|创业|访谈

Copyright © 2006-2015 Power by 零星设计. 联系QQ:150623477
合作共赢、快速高效、优质的网站建设提供商

  • ●在线咨询点击这里给我发消息
  • ●在线咨询点击这里给我发消息
  • ●在线咨询点击这里给我发消息
  • 业务电话正在通话中…
  • 09:00AM-22:00PM
  • 高效优质的网站建设提供商
  • 加入收藏