Gmap v3 и js не играют красиво - PullRequest
       5

Gmap v3 и js не играют красиво

0 голосов
/ 21 октября 2010

Прежде всего, вот мой код, о котором идет речь:

    var geocoder;
    var map;

    geocoder = new google.maps.Geocoder();
    var latlng = new google.maps.LatLng(-34.397, 150.644);
    var myOptions = {
        zoom: 18,
        center: latlng,
        mapTypeId: google.maps.MapTypeId.HYBRID
    }
    map = new google.maps.Map(document.getElementById("details"), myOptions);

    var q = $("span#address").text() + ' ' + $("span#city").text() + ' ' +$("span#state").text() + ' ' +$("span#zip").text();
    var t = document.getElementById('address').value;
    console.log(t);
    //var city = document.getElementById("home-city").value;
    //console.log(city);
    geocoder.geocode( { 'address': t}, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            map.setCenter(results[0].geometry.location);
            var marker = new google.maps.Marker({
                map: map,
                //draggable: true,
                position: results[0].geometry.location
            });
        } else {
            console.log("Geocode was not successful for the following reason: " + status);
        }
    });

хорошо, поэтому моя проблема в том, что я могу загрузить в geocoder.geocode () переменную, подобную этой

var address = "string address";

Я хочу получить адрес с определенной страницы и сохранить ее в переменной, а затем передать ее в Gmaps, и в идеальном мире это должно сработать!но кажется, что такого мира нет; - (

, поэтому я провел несколько тестов. Достаточно интересно ...

var q = $("span#address").text() + ' ' + $("span#city").text() + ' ' +$("span#state").text() + ' ' +$("span#zip").text();

работает, когда я выполняю console.log (address) Iполучить адрес, выданный. Но я не могу вставить адрес переменной в геокод, потому что он не распознает его. Во-вторых, я попробовал старый добрый обычный метод javascript и попытался получить val элемента с единственным идентификатором адреса. Firebug ANDошибка геокода говорит мне, что значение равно NULL ...

, поэтому я в замешательстве, jQuery может захватывать данные, но не может быть передан в геокод. Тогда обычный javascript говорит мне, что я сумасшедший, что тамне данные в поле, я пытаюсь ссылаться по id ...

кто-нибудь получил сценарий, как это работает?

Хммм, может быть, я должен упомянуть, что я выполнил весь этот кодна jquery live click function. Когда пользователь нажимает на иконку карты, весь этот код должен выполняться ...

Ответы [ 2 ]

0 голосов
/ 21 октября 2010

Итак, проблема заключалась в том, что я сначала объявлял карту Google, а затем пытался сослаться на информацию об адресе.Я переместил адрес var вверх, прежде чем создавать новую ссылку API карты Google.

0 голосов
/ 21 октября 2010
  • Используйте запятую вместо пробелов для разделения значений.
  • Убедитесь, что у вас есть только ОДИН элемент HTML с "адресом" id.
  • При получении с помощью getElementById(), используйте .value, чтобы получить значение элемента (не .val)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...