[英]Why does jQuery function not return any value?
用於從給定地址返回緯度和經度的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"});
}
});
});
});
我該如何解決?
如果我包括以下行
這解決了問題
<script type="text/javascript" src="maps.google.com.au/maps /api/js?sensor=false"></…
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.