jQuery脚本运行顺序错误

时间:2017-03-28 17:14:29

标签: javascript jquery ajax

我只写了一个简单的脚本,收集一些数据并通过AJAX将其发送到我的rails应用程序的导入脚本。

在我没有获得任何数据后,我使用了Chrome调试器,但我仍然没有发现问题。

$('#poi_import').on('click',function () {

    var token = $('.temp_information').data('token');
    var auth_token = $('.temp_information').data('auth-token')

    poi = [];

    $('#service-helper input[type="checkbox"]:checked').each( function(element){
        var request = {
            placeId: $(this).attr('id')
        };

        var detail_service = new google.maps.places.PlacesService($('#tmp').get(0));
        detail_service.getDetails(request, function(place, _status) {
            write_poi(place);
        });
    });

    console.log("Now send the data")
    console.log(poi)

    jQuery.ajax({
        url: "/api/" + token + "/import",
        data: poi,
        type: "POST",
        beforeSend: function (xhr) {
            xhr.setRequestHeader('AUTHTOKEN', auth_token);
            xhr.setRequestHeader('X-CSRF-Token', $('meta[name="csrf-token"]').attr('content'))
        }
    });

function write_poi(place) {

    //getting some information from "place"        

    poi.push({
      'name': name,
      'address': street,
      'city': city,
      'country': country,
      'phone': phone,
      'url': url
    });
    console.log(poi)
}

控制台正在记录以下行:

Now send the data
[]
[Object]
[Object, Object]
[Object, Object, Object]

该脚本首先执行AJAX请求。之后,它会迭代选中的复选框......

0 个答案:

没有答案