使用javascript从json返回数据时出错

时间:2013-01-06 14:18:41

标签: javascript jquery json

大家好我有下一个代码

function getclientip() {
$.getJSON("http://192.168.127.2/getipclient.php?callback=?", function(json) {
eval(json.ip);
});}

此功能适用于访客客户端的get ip addrees 结果我得到

({"ip":"192.168.15.149"});

我的问题是我将数据发送到其他功能

BtnClickGetIP: function(inSender, inEvent) {
this.USER_ADD_CONTENT.setDisplayValue(getclientip());
},

on fire bug我得到了:

SyntaxError: missing ; before statement
192.168.15.149 dojo_build.js (line 145, col 7)

2 个答案:

答案 0 :(得分:0)

function getClientIP(callback) {
    $.getJSON("http://192.168.127.2/getipclient.php?callback=?", function(json) {
        callback(json.ip);
    });
}

BtnClickGetIP: function(inSender, inEvent) {

    var that = this;

    getClientIP(function(ip) {
        that.USER_ADD_CONTENT.setDisplayValue(ip);
    })
}

答案 1 :(得分:0)

ajax是异步调用,你不能只返回$ .getJSON()。使用回调做你的事情。 如果你真的想要这样的程序。使用$ .ajax函数并设置async = false