return value from getJSON function

老子叫甜甜 提交于 2019-12-02 07:28:51

Here is the final solution:

function getval( callback ){
    jQuery.getJSON('http://data.mtgox.com/api/1/BTCUSD/ticker', function(data) {
        // We can't use .return because return is a JavaScript keyword.
        callback(data['return'].avg.value);
    });
}

$(function () {
        $(document).ready(function() {
        getval( function ( value ) { 
            alert( 'Do something with ' + value + ' here!' );
        } );
    });

});

Thanks everyone for your help!!

You might try using a callback function:

function getval( callback ){
    jQuery.getJSON('http://data.mtgox.com/api/1/BTCUSD/ticker?callback=?', function(data) {
        // We can't use .return because return is a JavaScript keyword.
        callback(data['return'].avg.value);
    });
}

$(function () {
        $(document).ready(function() {
        getval( function ( value ) { alert( 'Do something with ' + value + ' here!' ) } );
    });

});

Ajax calls are asynchronous, so you can't have the getVal() function return something. Whatever you need to do with the result, you have to do it in inside the callback function.

function getval() {
    jQuery.getJSON('http://data.mtgox.com/api/1/BTCUSD/ticker?callback=?', function(data) {
        // You have to use "data" here
        alert(data['return'].avg.value);
    });
}

$(function () {
    $(document).ready(function() {
        getval();
    });
});

Hi getJSON asynchronous call so its return undefind

so you need to fire ajax call pass with this args asnyc:false

Ex:

    function getCountrycodeJson(obj) {
     var code="";
        $.ajax({
         async: false,
          dataType : 'json',
         url: "url",
         type : 'GET',
         success: function(data) {
         for(var i in data){ 
//here do your logic and assign value for code varable   

          }
           }
      }});

        return code;
    }

this is working for me.....

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!