-1
入力フィールドにバインドされたGoogleマップを実装しようとしています。特定の場所に初期化せずにGMapを取得する必要があります
しかし、私は初期値を持たない入力フィールドと、最初は特定の都市に設定されているマップが必要です。 これは可能ですか? 入力フィールドのIDは「gmap-address」です。
<div class="section">
<input name="gmap-address" class="form-control" type="text" id="gmap-address" style="font-size:2em;height:3em;"/>
</div>
<input name="gmap-lat" type="text" id="gmap-lat"/>
<input name="gmap-long" type="text" id="gmap-long"/>
<input name="us9-city" type="text" id="us9-city"/>
<input name="us9-state" type="text" id="us9-state"/>
<input name="us9-zip" type="text" id="us9-zip"/>
<input name="us9-street1" type="text" id="us9-street1"/>
<div id="gmap" style="width: 60%; height: 500px; margin:0 auto; padding-top:5%;"></div>
<script>
function init(lat, long){
jQuery('#gmap').locationpicker({
location: {
latitude: lat,
longitude: long
},
radius: 300,
onchanged: function (currentLocation, radius, isMarkerDropped) {
var addressComponents = jQuery(this).locationpicker('map').location.addressComponents;
updateControls(addressComponents);
},
oninitialized: function(component) {
var addressComponents = jQuery(component).locationpicker('map').location.addressComponents;
updateControls(addressComponents);
},
inputBinding: {
latitudeInput: jQuery('#gmap-lat'),
longitudeInput: jQuery('#gmap-long'),
locationNameInput: jQuery('#gmap-address')
},
markerInCenter: true,
enableAutocomplete: true,
addressFormat: 'postal_code',
scrollwheel: false
});
}
function updateControls(addressComponents){
jQuery('#us9-street1').val(addressComponents.addressLine1);
jQuery('#us9-city').val(addressComponents.city);
jQuery('#us9-state').val(addressComponents.district);
jQuery('#us9-zip').val(addressComponents.postalCode);
jQuery('#us9-country').val(addressComponents.country);
}
</script>