javascript - 在 JSF 中如何在使用 backing bean 方法获取值后调用 java 脚本

标签 javascript jsf google-maps-api-3

我正在我的 jsf 应用程序中开发一项功能,该功能应该从数据库中检索地点的经纬度并将其绘制在 Google map 中。自 gmaps4jsf库未更新为 google maps java script api v3 ,我按原样使用谷歌地图java脚本api。问题是,在检索纬度和经度(通过 jsf)后,我无法调用脚本来绘制 map 中的位置。

这个问题有什么解决办法吗?

最佳答案

让 JSF 打印它,就像它是一个 JS 变量一样。

<h:form>
    <h:commandButton value="Submit" action="#{bean.submit}" />
</h:form>
<h:outputScript rendered="#{not empty bean.lat and not empty bean.lon}">
    var lat = #{bean.lat};
    var lon = #{bean.lon};
    initializeMapSomehowWith(lat, lon);
</h:outputScript>

(<h:outputScript> 生成 HTML <script type="text/javascript"> 元素,如果您仍在使用旧的 JSF 1.x,请使用 <h:panelGroup><script> 代替,并在模板文本中使用 <h:outputText> 代替 EL)

类似的东西

public void submit() {
    lat = 12.106173;
    lon = -68.935304;
}

记住:JSF 基本上生成 HTML。 JS 是 HTML 响应的一部分。

关于javascript - 在 JSF 中如何在使用 backing bean 方法获取值后调用 java 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10333719/

相关文章:

javascript - AngularJS : how to organize your code?

javascript - 音频排队未立即播放

java - 使用 Seam/JSF 获取表单请求

jsf - Bootsfaces inputText使用ajax更新bean中的值导致失去焦点

ios - 如何获得 MKPolyline 上的等距位置?

javascript - 当嵌套在 div 标记中时, map 不会显示在 Google Maps JavaScript API v3 上

javascript - Google map v3 性能问题

javascript - 是否可以判断用户是否将我的页面最小化或处于非事件状态?

jsf - p :dataTable with p:cellEditor tab behaviour

Android:如何加载 KML