1

我正在编写下面的代码,它基本上将数据从当前日期转换为 PHP 文件以在 jQuery 中处理。直到这里一切都很好。但我不明白为什么total在它选择来自 PHP 文件的值之后我不能有一个新的变量值。

day.each(function () {

        var $this = $(this);
        var the_index = $this.index();
        var the_date = $this.find('h3.date').html().substr(0,2);
        var the_day = $this.find('h3.day');

        /*THIS VARIABLE*/   
        var total = 0;

        $.get('trd/datetime.php', function (date) {

            if(that.hasClass('list-'+date.day)) {
                weekList.find('.item.list-'+date.day).addClass('active');
            }

            total = date.firstDate;

        }, 'json');

        console.log(total);


    });

我不知道我的英语是否有帮助,但是,请告诉我我做错了什么!

谢谢。

4

1 回答 1

5

调用是异步的.get——它里面的东西在你的声明 之后运行。console.log

您可能想要使用从处理程序内部调用的回调.get

$.get('trd/datetime.php', function (date) {
    // ...

    callback(total);
}, 'json');

function callback(total) {
    console.log(total);
}
于 2013-07-10T22:43:50.763 回答