如何将JQuery变量传递给全局变量
How to pass JQuery variable to a global one
我正试图从JQuery函数中检索数据,并将其传递到全局变量中,以便与谷歌地图一起使用。这些变量必须保持全局性,否则谷歌地图无法使用它们。我设法从AJAX url中获得了我需要的所有数据,它完美地记录了日志,但只在Jquery函数中。如果我把它记录在它之外,它是未定义的。是否有将这些值传递给全局变量的方法?
function displayMarkers() {
var latlng = new google.maps.LatLng(latitd, longtd);
var name = titleName;
createMarker(latlng, name);
}
var latitd;
var longtd;
var titleName;
$(document).ready(function() {
$('#earthquakes').click(function() {
getQuakes();
});
function getQuakes() {
$.ajax({
url: 'http://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&starttime=' + yesterDate + '&endtime=' + displayDate,
success: function(data) {
console.log(data);
$.each(data.features, function(key, val) {
var coord = val.geometry.coordinates;
locationD = {
latd: coord[0],
lngd: coord[1]
};
latitd = locationD.latd;
longtd = locationD.lngd;
titleName = val.properties.title;
console.log(latitd, longtd);
console.log(titleName);
});
}
});
}
});
您的代码应该是这样的
var latitd;
var longtd;
var titleName;
$(document).ready(function () {
$('#earthquakes').click(function () {
getQuakes();
});
});
function getQuakes() {
$.ajax({
url: 'http://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&starttime=' + yesterDate + '&endtime=' + displayDate,
success: function (data) {
console.log(data);
$.each(data.features, function (key, val) {
var coord = val.geometry.coordinates;
locationD = {
latd: coord[0],
lngd: coord[1]
};
latitd = locationD.latd;
longtd = locationD.lngd;
titleName = val.properties.title;
console.log(latitd, longtd);
console.log(titleName);
//Call this function to display here after success ajax
displayMarkers();
});
}
});
}
function displayMarkers() {
var latlng = new google.maps.LatLng(latitd, longtd);
var name = titleName;
createMarker(latlng, name);
}
将async:false
添加到您的ajax请求中。
相关文章:
- 访问jsrender模板中的全局javascript变量并更新它
- 在使用cq:include包含外部JS之前,如何在JSP中包含全局JS变量
- 全局Javascript变量变为null
- 在javascript函数的循环中设置全局布尔变量的最佳语法
- 访问AngularJS中的全局javascript变量
- YepNope/Modernizr 回调,包含全局 JavaScript 变量和 Internet Explorer
- 全局JSON变量
- 如何在imacros中获取全局javascript变量
- 将全局配置变量传递到手把模板的最佳方式是什么
- 您可以从S3上托管的Iframe中访问全局JS变量吗
- javascript变量变量名和全局作用域(pinesnotify)
- 拉斐尔和“;全局“;变量
- MVC为局部视图制作了一个全局js变量
- 如何将全局 Meteor 变量传递给模板并访问和使用它们
- 在函数内设置全局范围变量
- 何时重置全局 JavaScript 变量
- document.ready 中的全局 javascript 变量
- 使用 Jquery 更新全局 JS 变量并返回该值
- 为什么要在 Window 对象中将全局声明变量的值设置为相同的值
- 如何将每个 JSON 行添加到全局 jQuery 变量中