0
我有以下JS处理表单,返回结果为JSON,然后应该在地图上标记json作为标记。尽管我确实得到了json响应,但没有绘制任何内容。我对JavaScript并不是很熟悉,所以有人可以告诉我下面的错误是什么?谷歌地图:从JSON加载标记
感谢
的JSON:
[
{
"lat": "53.598660370500596",
"lng": "-113.59166319101564"
}
]
JavaScript的
$(function() {
$('#search').click(function() {
var projectNumber = $('#project_number').val();
var setdistance = $('#setdistance').val();
var companyType = $('#company_type').val();
//syntax - $.post('filename', {data}, function(response){});
$.post('business_location_get_map.php', {
project_number: projectNumber,
setdistance: setdistance,
company_type: companyType
}, function (ret) {
$('#result').html(ret);
});
});
});
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(53.5435640000, -113.5),
zoom: 8
};
var map = new google.maps.Map(document.getElementById("map_canvas"),
mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
function plot() {
$.getJSON('business_location_get_map.php', function (data) {
var location;
$.each(data, function (key, val) {
addMarker(key.lat, key.lng);
});
});
}
function addMarker(lat, lng) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(lat, lng),
map: map,
icon: redImage
});
markersArray.push(marker);
}
google.maps.event.addDomListener('search', 'click', plot);
编辑:
我已经改变了
(key.lat, key.lng)
到
(val.lat, val.lng)
我仍然有同样的结果,
在你的getJSON一个简单的console.log会有所帮助;) – MrUpsidown
OK,这是有道理的,我现在已经改变了,但我仍然没有得到结果。我试图弄清楚console.log,我从来没有使用它,就像我说过我没有使用JavaScript很多 – Owen
仍然没有,但是当我使用控制台它说:click方法是未定义的AddDomListner在最后。我有一个按钮,指出onclick =“plot()”。这会成为问题吗? – Owen