ajax:dataType属性

本文探讨了在使用jQuery的Ajax进行前后端交互时,dataType属性如何影响数据的接收和解析过程。通过实例对比,阐述了dataType设置为'json'、'text'和'html'时的不同表现,并说明了正确设置dataType对于避免解析错误的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

测试 一:没有加dataType属性的情况

            $.ajax({
                type: "GET",
                // dataType: "json",
                url: "../friendster/info/" + rowId,
                async: false,
                success: function success(r) {
                     if(r.code===0) {
                         vm.hotStatus = r.entity.hot;
                     }else{
                         iview.Message.error(r.msg);
                         status=500;
                     }
                 }
             });

返回结果:

在这里插入图片描述
如上图所示:我们可以看到返回的是json字符串

我下面用iview.Message.error(r.msg),后来iview js报错,大概意思就是没有内容,后来我来console上打印r.msg 发现结果是undefined

解决办法:

我们先来看看dataType属性到底是个什么东西,

1.dataType值如果为'json',jquery就会把后端返回的字符串尝试通过JSON.parse()尝试解析为js对象。
2.dataType值如果为'text',结果弹出框直接显示后台返回的json字符串。
3.dataType值如果为'html',结果弹出框直接显示后台返回的json字符串。

当代码中加上dataType:“json” ,这个属性后,我们再次看到返回结果就是java对象了,不需要我们去手动的解析json字符串

如下图:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值