return value from getJSON function

后端 未结 4 1331

I have a function with jquery getJSON and i need the return the result value back (to Use it somewhere else)

Here is the code:

function getval(){
jQuery.         


        
相关标签:
4条回答
  • 2021-01-24 18:05

    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!' ) } );
        });
    
    });
    
    0 讨论(0)
  • 2021-01-24 18:06

    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.....

    0 讨论(0)
  • 2021-01-24 18:11

    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!!

    0 讨论(0)
  • 2021-01-24 18:11

    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();
        });
    });
    
    0 讨论(0)
提交回复
热议问题