我想在另一个页面中获取Javascript数据并在现有的javascript中使用它。
让我用代码解释一下。
我想从其他页面获取此数据
<script type="text/javascript">
var data = {
"users": [
{
"latitude": "48.405163",
"longitude": "2.684659"
},
{
"latitude": "43.7347242529278",
"longitude": "7.42198348045349"
}
]
};
</script>
我尝试使用此代码获取它
$(function MapData() {
$.getScript({
type: "GET",
url: "default.cs.asp?Process=ViewCheckinMap",
success: function(data) {
$("#content").append(data);
},
error: function (data) {
$("#content").append(data);
}
});
});
为了在数据变量中使用数据,请使用此代码
function initialize() {
var center = new google.maps.LatLng(48.404840395764175, 2.6845264434814453);
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 3,
center: center,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var markers = [];
for (var i = 0; i < data.users.length; i++) {
var location = data.users[i];
var latLng = new google.maps.LatLng(location.latitude,
location.longitude);
var marker = new google.maps.Marker({
position: latLng
});
markers.push(marker);
}
var markerCluster = new MarkerClusterer(map, markers);
}
google.maps.event.addDomListener(window, 'load', initialize);
但我得到数据未定义错误。
我也尝试使用
从其他页面获取数据 $.getScript('default.cs.asp?Process=ViewCheckinMap');
但我得到了同样的错误。
我该如何解决这个问题? 非常感谢!
答案 0 :(得分:1)
当您使用$.getScript()
加载javascript时,不应在要加载的文件中包含<script>
标记。此外,您需要在完成加载文件后运行initialize()
函数:
$.getScript('default.cs.asp?Process=ViewCheckinMap', initialize)
答案 1 :(得分:0)
数据仅适用于getScript调用的回调函数。 如果要在外部使用它,请将其存储在全局变量中并使用它。