Всем привет! Я пытаюсь использовать getLatLng() для геокодирования списка почтовых/почтовых индексов и сохранения сгенерированной точки в базе данных для последующего размещения на карте. Это то, что у меня есть до сих пор:
$(".geocodethis").click(function () {
var geocoder = new GClientGeocoder();
var postalCode = $(this).siblings(".postal").val();
var id = $(this).siblings(".id").val();
geocoder.getLatLng(postalCode, function (point) {
if (!point) {
alert(postalCode + " not found");
} else {
alert(point);
var serializedPoint = $.param(point);
//Geocode(id, point);
}
});
});
function Geocode(id, point) {
alert(point);
$.post("/Demographic/Geocode/" + id, point, function () {
alert("success?");
});
}
но я получаю this.lat is not a function
в своей консоли ошибок, когда пытаюсь сериализовать точечный объект или использовать его в $.post()
Из моих исследований я понимаю, что geocoder.getLatLng()
асинхронный, как это повлияет на то, что я пытаюсь сделать? Я не запускаю этот код в цикле и пытаюсь опубликовать точку, используя функцию анонимного обратного вызова.
Как я могу сохранить информацию из point
, чтобы использовать ее позже?
Обновить
Создание маркера и попытка опубликовать его по-прежнему приводят к this.lat is not a function
в консоли ошибок.
$(".geocodethis").click(function () {
var geocoder = new GClientGeocoder();
var postalCode = $(this).siblings(".postal").val();
var id = $(this).siblings(".id").val();
geocoder.getLatLng(postalCode, function (point) {
if (!point) {
alert(postalCode + " not found");
} else {
alert(point);
var marker = new GMarker(point);
$.post("/Demographic/Geocode/" + id, marker, function () {
alert("success?");
});
}
});
});
** Еще одно обновление **
Мне действительно нужно сохранить геокодированный адрес на потом, даже если я сохраню значения широты/долготы в своей базе данных и переделаю маркер, когда буду готов нанести его на карту. Опять же, сериализация или публикация - по-видимому, использование точки любым способом, кроме функций Google Maps, дает исключение this.lat is not a function
в моем журнале ошибок.
Я использую asp.net mvc - есть ли какие-нибудь фреймворки, которые упростили бы это? Мне действительно нужна помощь с этим. Спасибо.