2016-09-21 26 views
0

与えられたアドレスからlatとlongを取り出して返すjQuery関数は機能しません。フォームからアドレス入力を取得していますが、jQuery関数にアドレスを表示できますが、ジオコードは何も返しません。なぜjQuery関数は値を返しませんか?

<?php 
    echo $this->Form->input('address_street',['id' => 'street']); 
    echo $this->Form->input('address_suburb',['id' => 'suburb']); 
    echo $this->Form->input('address_postcode',['id' => 'postcode']); 
    echo $this->Form->input('address_state',['id' => 'state','type' => 'select', 'options' => $auStates, 'default' => 'VIC']); 
?> 
<hr> 
<?php 
    echo $this->Form->input('address_lat',['id' => 'lat']); 
    echo $this->Form->input('address_long',['id' => 'long']); 
?> 

$(document).ready(function($) { 
    var geocoder = new google.maps.Geocoder(); 

    $(document).on('click', '#calculate_address_lat_long', function() { 
     var address = ''; 
     address += $('#street').val(); 
     address += ' ' + $('#suburb').val(); 
     address += ' ' + $('#postcode').val(); 
     address += ' ' + $('#state').val(); 

     // alert($('#street').val()); 
     // alert(address); 

     geocoder.geocode({ 'address': address}, function(results, status) { 
      if (status == google.maps.GeocoderStatus.OK) { 
       console.log(results); 
       var latitude = results[0].geometry.location.lat(); 
       var longitude = results[0].geometry.location.lng(); 
       $('#lat').val(latitude); 
       $('#long').val(longitude); 
       $('#formated_address_lat_long') 
       .html('<div class="alert alert-success">' + results[0].formatted_address + '</div>') 
       .fadeTo(100, 0.1).fadeTo(250, 1) 
       .css({"position": "relative","top": "15px"}); 
       alert($('#lat').val(latitude)); 
      } else { 
       alert($('#lat').val(latitude)); 
       alert($('#long').val(longitude)); 
       $('#formated_address_lat_long') 
       .fadeTo(100, 0.1).fadeTo(250, 1) 
       .html('<div class="alert alert-error">Address Not Found</div>') 
       .css({"position": "relative","top": "15px"}); 
      } 
     }); 
    }); 
}); 

どうすれば解決できますか?

+0

を解く - だけでなくエラー機能を提供します。 –

+1

「戻る」とはどういう意味ですか?出力は何ですか?どのアラートが表示されますか?コンソールにエラーがありますか? – JJJ

+0

エラーメッセージは表示されず、アラートが表示されますが、geocoder.geocode関数内には何も表示されません。 OPが表示された場合、ジオコード関数に警告がありますが、何も出力されません。 – ajt

答えて

0

私は
以下の行が含まれていた場合、これはそれがerroringされるかもしれない問題

  <script type="text/javascript" src="maps.google.com.au/maps  /api/js?sensor=false"></… 
関連する問題