echarts数据填写出错

    $.ajax({

        type: "post",

        url: "__MODULE__/Index/kline",

        data : "product=meiyuanzhishu" +"&min="+5,   //注意这里必须用=

        async: false,

        success: function (data) {


            console.log(data);

            

            //直接填写数据是正确的

            data0 = splitData([['20:30',94.183,94.197,94.179,94.205],['20:35',94.201,94.131,94.129,94.201],['20:40',94.137,94.158,94.117,94.164],['20:45',94.157,94.155,94.141,94.166],['20:50',94.155,94.112,94.107,94.163],['20:55',94.115,94.079,94.07,94.115],['21:00',94.077,94.128,94.074,94.128],['21:05',94.125,94.129,94.11,94.132],['21:10',94.129,94.144,94.111,94.15],['21:15',94.147,94.138,94.132,94.153],['21:20',94.138,94.149,94.128,94.155],['21:25',94.149,94.116,94.116,94.155],['21:30',94.124,94.11,94.104,94.128],['21:35',94.11,94.104,94.096,94.113],['21:40',94.109,94.133,94.107,94.134],]);


        }

    });

但是这样 书写data


https://img.mukewang.com/5c3049710001e13b05720253.jpg

data是一样的,为什么会报错,是因为数据类型不一样?、

https://img4.mukewang.com/5c3049890001aa3115710060.jpg

DIEA
浏览 473回答 1
1回答

大话西游666

jQuery.ajax返回回来的,可能是一个对象(或者数组),也可能是HTML源码(或者是直接输出的内容,为文本形式)以上情况,首先是根据dataType配置判断的,如果设置了可以识别的dataType,则会尝试将返回结果按照dataType指定的值来识别,但是如果按照dataType转换失败的话,就会以原数据(也就是纯文本)返回如果没有配置dataType,则会根据传输头,或者猜测数据格式,但是同样的,如果转换失败,就会以元数据返回而jQuery.ajax默认解析JSON的方法是JSON.parse(),也就是说,要让它返回数据为数组,也就需要你的数据可以被JSON.parse()解析成数组,否则就是以纯文本返回但是由于你的这个数组,并不是标准的JSON格式,数组最后多了一个逗号([[ ... ], ..., [ ... ],]),所以JSON.parse()无法解析,所以你返回回来的,是一个String类型的,所以无法使用splitData进行处理。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript