0

大家好,我有下一个代码

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

着火错误我得到:

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

2 回答 2

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);
    })
}
于 2013-01-06T14:23:08.367 回答
0

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

于 2013-01-06T17:59:01.327 回答