我在为全局变量分配值并在函数内部使用它时遇到问题。这是我的代码:

var chartinfo = {"c0":"0", "c1":"0"}; // This is my global variable
$.getJSON("http://127.0.0.1:8080/chartinfo", function(json1){
    chartinfo = json1; // I need to assign json1's value to chartinfo
});
$(function () {
    $(document).ready(function() {
        alert("external chartinfo " + chartinfo.c0.name); // I need to use chartinfo here

最佳答案

警报失败,因为您的请求尚未完成。您可以尝试以下方法:

var chartinfo = {
    "c0": "0",
    "c1": "0"
};

var jqxhr = $.getJSON("http://127.0.0.1:8080/chartinfo", function (json1) {
    console.log("success");
})
    .done(function () {
    chartinfo = json1;
    alert("external chartinfo " + chartinfo.c0.name); // I need to use chartinfo here
})
    .fail(function () {
    console.log("error");
})


http://jsfiddle.net/ZpUsM/

关于javascript - 向函数内的全局变量分配值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16374081/

10-11 05:53