gpt4 book ai didi

ajax - 如何从 JQuery getJSON 回调中获取数据

转载 作者:行者123 更新时间:2023-12-03 22:41:03 24 4
gpt4 key购买 nike

我需要从回调函数中获取 JSON 对象数据,以便稍后可以在页面中处理它,而不是像现在一样在回调中处理它。这对于其他人来说一定是显而易见的,因为我看不到任何关于它的文字。谁能告诉我该怎么做?

这是我的代码:

<script type="text/javascript" src="/site_media/js/jstree/_lib/jquery.js"></script>  
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
function initialize() {
var myLatlng = new google.maps.LatLng(-25.363882,131.044922);
var myOptions = {
zoom: 4,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
return map;
}

function add_marker(map, lat, long) {
var marker_image='/site_media/images/map_marker.png';
var myLatlng = new google.maps.LatLng(lat,long);
title='title';
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title:title,
icon:marker_image
});
//map.panTo(myLatlng);
}

//window.onload=initialize();
setTimeout('map=initialize();',2000);

$.getJSON("/ajax/get", function(data) {
$.each(data, function(i,val) {
latitude = val.fields.latitude;
longitude = val.fields.longitude;
add_marker(map, latitude, longitude);
});
});
</script>
<div id="map_canvas" style="width: 500px; height: 300px"></div>

最佳答案

Rich,它实际上比你想象的要简单得多(至少看起来是这样)。我假设你的标记有一个 id 或其他东西。您可能需要调整它以按照您想要的方式工作:

var lastMarkerId; // We'll store the id here, starts as undefined

function refresh_markers () {
$.getJSON("/ajax/get", { marker_id: lastMarkerId }, function(data) {
$.each(data, function(i,val) {
latitude = val.fields.latitude;
longitude = val.fields.longitude;
add_marker(map, latitude, longitude);
});
if (data.length) {
// grab the last item and store its ID
lastMarkerId = data.pop().id;
}
});
}

然后在您的服务器上执行类似以下操作:“如果 marker_id 有值,则查找该 id 之后的每个标记,否则返回全部”。

记住!每个标记都需要一个 id 才能使我的代码正常工作:

[{id:1, fields: {latitude: "..", longitude: ".." }}]

关于ajax - 如何从 JQuery getJSON 回调中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3689700/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com