我只写了一个简单的脚本,收集一些数据并通过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请求。之后,它会迭代选中的复选框......