用javascript从json返回数据时出错

Error returning data from json with javascript

本文关键字:数据 出错 返回 json javascript      更新时间:2023-09-26

大家好,我有下一个代码

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

此功能用于获取访问者客户端的IP地址结果是

({"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)
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);
    })
}

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