weixin_33738555 2016-03-10 04:53 采纳率: 0%
浏览 4

功能与ajax请求

can you help me with this problem? In success:.... I get a result that I need, but ajaxFunction at the end returns ' ' value.

ajaxFunction = function(lastNumber){
        var json_result = '';
        $.ajax({
            type: "POST",
            contentType: "application/json",
            dataType: "json",
            data: '{"first" : "'+lastNumber+'"}',
            url: "http://localhost:8080/some_url",
            success: function (result) {
                console.log("in success:  " + result.result);
                json_result =  result.result;
            }
        });
        console.log("before return   " + json_result);
        return json_result;
    };

</div>
  • 写回答

3条回答 默认 最新

  • perhaps? 2016-03-10 06:00
    关注

    You can put this and try

        ajaxFunction = function(lastNumber){
        var json_result = '';
        $.ajax({
            async: false,
            type: "POST",
            contentType: "application/json",
            dataType: "json",
            data: '{"first" : "'+lastNumber+'"}',
            url: "http://localhost:8080/some_url",
            success: function (result) {
                console.log("in success:  " + result.result);
                json_result =  result.result;
            }
        });
        console.log("before return   " + json_result);
        return json_result;
    };
    

    It will make the call synchronous as you are setting async to false, which is by default true.

    If not working with this one, you can make use of either call back or promise(works and returns like synchronous calls).

    评论

报告相同问题?