[英]In JSF how to invoke java script after getting a value using backing bean method
我正在我的jsf应用程序中开发一个功能,它应该从数据库中检索一些地方并在Google地图中绘制它。 由于gmaps4jsf库没有使用谷歌地图java脚本api v3更新,我正在使用google maps java script api。 问题是,在检索lat和lon(通过jsf)后,我无法调用脚本在地图中绘制地点。
这个问题的解决方案是什么?
让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响应的一部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.