求助:ajax调用api返回的内容undifined

wlm2007 2017-02-19 04:50:35
小弟新人,问个菜鸟问题。我用ajax跨域调用api,在不带参数时能正常返回,带了参数,返回的内容为undifined,不知道是啥原因,请各位大侠指教。
-----代码如下:--------

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ajax调用api</title>
<script src="../js/jquery-3.0.0.min.js"></script>
</head>
<body>
<input id="button" type="button" value="调用api">
<div id="textBack"></div>
<script>
$(function() {
$("#button").click(function() {
$.ajax({
url: "http://www.freedt.cn/api/wifi/local",
data: { //将参数部分注释掉后能正确返回
call_key: "58a57222fee76f2003036df9",
lon: "116.366324",
lat: "39.905859",
r: "3000",
type: "1"
},
type: 'post',
dataType: 'jsonp',
success: function(data) {
console.log("data type: " + typeof(data));
$('#textBack').html(JSON.stringify(data));
}
});
});
});
</script>
</body>
</html>


------返回内容-----
控制台输出--

看调试器因该是获取到内容了----


如果把data(参数)部分注释掉,一切又都正常,弄不懂怎么回事,各位大爷能不能帮忙看下代码,,谢谢了!
...全文
177 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wlm2007 2017-02-19
  • 打赏
  • 举报
回复
谢谢#4楼!
再问一下,像这种返回,会提示 SyntaxError: Unexpected token ':'. Parse error. 该如何解析呢?谢谢赐教!
Go 旅城通票 2017-02-19
  • 打赏
  • 举报
回复
type改为get
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>ajax调用api</title>
        <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
    </head>
    <body>
        <input id="button" type="button" value="调用api">
        <div id="textBack"></div>
        <script>
            $(function() {
                $("#button").click(function() {
                    $.ajax({
                        url: "http://www.freedt.cn/api/wifi/local",
                        data: {                        //将参数部分注释掉后能正确返回
                            call_key: "58a57222fee76f2003036df9",
                            lon: "116.366324",
                            lat: "39.905859",
                            r: "3000",
                            type: "1"
                        },
                        type: 'get',
                        dataType: 'jsonp',
                        success: function(data) {
                            console.log("data type: " + typeof(data));
                            $('#textBack').html(JSON.stringify(data));
                        }
                    });
                });
            });
        </script>
    </body>
</html>
似梦飞花 2017-02-19
  • 打赏
  • 举报
回复
找后端 是他们按照参数返回的 让他们修改格式到一致了
二月十六 2017-02-19
  • 打赏
  • 举报
回复
引用 1 楼 wlm2007 的回复:
感觉带参数的返回数据被包了两层,不知道怎么能够剥离出来?
试试data.result.data[i].name
wlm2007 2017-02-19
  • 打赏
  • 举报
回复
感觉带参数的返回数据被包了两层,不知道怎么能够剥离出来?

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧