变量的范围和执行顺序

时间:2018-11-02 21:45:45

标签: jquery

在代码的第二块中,“ oSearch”设置为country_of_interest。知道为什么要使用“测试”而不是国家/地区名称吗?

谢谢!

$(document).ready(function () {
    var country_of_interest = 'test';

    $.ajax({
        url: "http://127.0.0.1:8000/api/users/?format=json"
    }).then(function (data) {
        country_of_interest = (data[0].country_name);
    });

    $('#posts').DataTable({
            autoWidth: true,
            responsive: true,
            "oSearch": {"sSearch": country_of_interest},
        }
    );
});

1 个答案:

答案 0 :(得分:1)

您必须将第二段代码移至成功的回调函数中。

$(document).ready(function () {
    var country_of_interest = 'test';

    $.ajax({
        url: "http://127.0.0.1:8000/api/users/?format=json"
    }).then(function (data) {
        country_of_interest = (data[0].country_name);
        if(country_of_interest){
       $('#posts').DataTable({
            autoWidth: true,
            responsive: true,
            "oSearch": {"sSearch": country_of_interest},
        }
    );
   }
 });


});