Загрузите маркеры с помощью JSON - PullRequest
0 голосов
/ 21 ноября 2011

Я следовал по этой ссылке в моем приложении. В свою очередь, я получаю пробелы в моем устройстве, и .Map не отображается.

Код:

<script type="text/javascript">
$(function() {
    $('#map_canvas').gmap().bind('init', function() {
        $.getJSON( 'http://xxxxxxxxxxxxxxxxxxxxxxxxxxxxx?latitude=&longitude=', function(data) {
            $.each( data.Status.Shoplist, function(i, m) {
                $('#map_canvas').gmap('addMarker', { 'position': new google.maps.LatLng(m.lat, m.lng)} );
            });
        });
    });
});
</script>

JSON:

{"Status" :{ "Shoplist":[ { "id" : "1", "Name" : "ee", "phone" : "", "fax" : "",   "latitude" : "xxxxxx", "longitude" : "yyyyyyy" } , { "id" : "3", "Name" : "hhh", "phone" : "", "fax" : "",  "latitude" : "xxxx", "longitude" : "yyyyy" } ,..... } ]}}

Ответы [ 2 ]

0 голосов
/ 09 декабря 2011

Поскольку ваш json не имеет атрибутов lat или lng, вы должны изменить код в методе addMarker на

new google.maps.LatLng(m.latitude, m.longitude)

0 голосов
/ 22 ноября 2011

Убедитесь, что вы добавили все внешние хосты в белый список в PhoneGap.

В iOS добавьте хосты к ключу ExternalHosts в списке PhoneGap.plist в соответствии с часто задаваемыми вопросами на этой странице: http://wiki.phonegap.com/w/page/41631150/PhoneGap%20for%20iOS%20FAQ

в Android добавьте хосты в файл phonegap.xml в / res / xml вашего проекта. Формат отличается от iOS. Вот пример файла phonegap.xml:

<?xml version="1.0" encoding="utf-8"?>
<phonegap>
    <access origin="http://127.0.0.1*"/>
    <access origin="http://*.phonegap.com"/>
    <log level="DEBUG"/>
</phonegap>

Подстановочные знаки разрешены, как в примере выше.

Обязательно добавьте любые внешние хосты, которые ваши скрипты могут вызывать (с картами Google, которые могут быть различными и многими). Пока вы пытаетесь заставить его работать, вы всегда можете просто добавить *, чтобы разрешить все внешние хосты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...