如何在JSF 1.2 / Richfaces 3.3中调用渲染上的Javascript函数?

时间:2011-10-21 16:01:43

标签: jsf richfaces jsf-1.2

我们a4j:outputPanelajaxRendered。有没有办法在每次(重新)渲染时调用javascript函数?我知道我们可以在每个可能使用oncomplete提交的元素中调用,但这实际上并不是可维护的。

详细说明:

  • JSF 1.2
  • Richfaces 3.3

示例(onPamplete实际上在outputPanel标记上不可用):

<a4j:outputPanel ajaxRendered="true" oncomplete="myJSFunc()">
    <h:outputText value="Test-aroo" />
</a4j:outputPanel>
<!-- other inputs, buttons and stuff -->

更新 jQuery库是否能够提供帮助(它内置于RichFaces中)?我正在使用.live()来注册oncomplete事件。我会继续尝试和更新进度。

更新我没有机会实现jQuery解决方案,但正如我的答案显示在下面myJSFunc()可以直接放在渲染的标签内。

2 个答案:

答案 0 :(得分:8)

解决方案是将javascript放在outputPanel内的脚本标记中:

<a4j:outputPanel ajaxRendered="true">
    <h:outputText value="Test-aroo” />
    <script type=”text/javascript”>myJSFunc();</script>
</a4j:outputPanel>

答案 1 :(得分:0)

您需要在触发Ajax请求的组件上调用oncomplete。 a4j:outputPanel没有oncomplete属性。