0
我在很多時間搜索過,但沒有找到。我想從jquery地址選擇器中選擇一個地址,它使用gmap api並綁定我的bean中的所有字段。自動完成和地址字段正常工作,但所有其他字段不起作用(空字符串或空字符串)。從javascript調用setter bean
這裏是我的代碼:
的Javascript:
<script>
function initialize() {
if (document.getElementById("map_form:panel:addresspicker_map")) {
var addresspickerMap = $("#map_form\\:panel\\:addresspicker_map").addresspicker({
regionBias: "fr",
reverseGeocode: true,
mapOptions: {
zoom: 4,
center: new google.maps.LatLng(46, 2),
scrollwheel: false,
mapTypeId: google.maps.MapTypeId.ROADMAP,
reverseGeocode: true
},
elements: {
map: "#map",
lat: "#map_form\\:panel\\:lat",
lng: "#map_form\\:panel\\:lng",
street_number: '#map_form\\:panel\\:street_number',
route: '#map_form\\:panel\\:route',
locality: '#map_form\\:panel\\:locality',
administrative_area_level_2: '#map_form\\:panel\\:administrative_area_level_2',
administrative_area_level_1: '#map_form\\:panel\\:administrative_area_level_1',
country: '#map_form\\:panel\\:country',
postal_code: '#map_form\\:panel\\:postal_code',
type: '#map_form\\:panel\\:type'
}
});
var gmarker = addresspickerMap.addresspicker("marker");
gmarker.setVisible(true);
addresspickerMap.addresspicker("updatePosition");
// Update zoom field
var map = $("#map_form\\:panel\\:addresspicker_map").addresspicker("map");
google.maps.event.addListener(map, 'idle', function() {
$('#map_form\\:panel\\:zoom').val(map.getZoom());
});
}
}
;
</script>
我的JSF頁面:
<p:tab id="address_site" title="Adresse du site">
<h:panelGrid columns="2">
<h:outputText value="Addresse" />
<p:inputText onfocus="initialize();" id="addresspicker_map" value="#{contratsController.currentSiteCreate.address}"/>
</h:panelGrid>
</p:tab>
<p:tab id="address_details_site" title="Adresse détaillée">
<h:panelGrid columns="2">
<h:outputText value="Street Number" />
<p:inputText id="street_number" disabled="true" value="#{contratsController.currentSiteCreate.street_number}"/>
<h:outputText value="Route" />
<p:inputText id="route" disabled="true" value="#{contratsController.currentSiteCreate.route}"/>
<h:outputText value="Postal Code" />
<p:inputText id="postal_code" disabled="true" value="#{contratsController.currentSiteCreate.postal_code}"/>
<h:outputText value="Locality" />
<p:inputText id="locality" disabled="true" value="#{contratsController.currentSiteCreate.locality}"/>
<h:outputText value="District" />
<p:inputText id="administrative_area_level_2" disabled="true" value="#{contratsController.currentSiteCreate.district}"/>
<h:outputText value="State/Province" />
<p:inputText id="administrative_area_level_1" disabled="true" value="#{contratsController.currentSiteCreate.state_province}"/>
<h:outputText value="Country" />
<p:inputText id="country" disabled="true" value="#{contratsController.currentSiteCreate.country}"/>
<h:outputText value="Lat" />
<p:inputText id="lat" disabled="true" value="#{contratsController.currentSiteCreate.latitude}"/>
<h:outputText value="Lng" />
<p:inputText id="lng" disabled="true" value="#{contratsController.currentSiteCreate.longitude}"/>
<h:outputText value="Zoom" />
<p:inputText id="zoom" disabled="true" value="#{contratsController.currentSiteCreate.zoom}"/>
<h:outputText value="Type" />
<h:inputText id="type" disabled="true" value="#{contratsController.currentSiteCreate.type}"/>
<h:outputText value="Map" />
<div id="map"></div>
</h:panelGrid>
</p:tab>
<p:tab id="confirmation_site" title="Confirmation">
<h:commandButton styleClass="btn btn-success btn-lg btn-block" actionListener="#{contratsController.addSite}" value="Ajouter" />
</p:tab>
當我推的commandButton,contratsController.currentSiteCreate.address是吃得飽飽的,但所有其他字段爲空或空白。
非常感謝!有用 – Archi