Ajax JQuery не может передавать параметры - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь создать гибридное приложение, которое получает вывод json из спокойного веб-сервиса.приложение mashup извлекает данные широты и долготы из ответа json, а затем указывает их на внедренной хорошей карте.

<html>
<form> 
  Post Code:<br> 
  <input type="text" id="postcode"><br> 
  <button onclick="getdata()">Submit</button>
</form>

<h1>Location on Google Map</h1>

<div id="map" style="width:400px;height:400px;background:yellow"></div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
  function getdata() {
    var value1 = $("input#postcode").val();
    var settings = {
      "async": true,
      "crossDomain": true,
      "url": "http://localhost:8080/getlocation?postcode=" + value1,
      "type": "POST",
      "method": "GET"
    }

    $.ajax(settings).done(function(response) {
      data = JSON.parse(response);
      console.log(data['4000']['Latitude']);
      var lat = data['4000']['Latitude'];
      var lng = data['4000']['Longitude'];
      init(lat, lng);
    });

    function init(lat, lng) {
      latlng = new google.maps.LatLng(lat, lng);
      var mapOptions = {
        center: new google.maps.LatLng(lat, lng),
        zoom: 20,
        mapTypeId: google.maps.MapTypeId.HYBRID
      }
      var map = new google.maps.Map(document.getElementById("map"), mapOptions);
      var customMarker = new google.maps.Marker({
        position: latlng,
        map: map,
      });
    }
  }
</script>

<script src="https://maps.googleapis.com/maps/api/js?callback=getdata"></script>
</html>

Однако я не могу передать другие значения в параметр 'postcode' в "http://localhost:8080/getlocation?postcode=". Переданные значения должны быть такими, как 4010,4011 и т. Д.

1 Ответ

0 голосов
/ 26 сентября 2018

Я думаю, это потому, что ваш <script src="https://maps.googleapis.com/maps/api/js?callback=getdata"></script> инициируется ПОСЛЕ вашего пользовательского сценария.API карты Google должен быть объявлен ДО вашего кода.Поместите его над тегами <script>, содержащими пользовательский код

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