Execute managebean method from javascript onload event

转载 2015年11月20日 22:56:25

In theory the following should do it.

<h:body>
    <f:ajax event="load" listener="#{bean.onload}" />
</h:body>

with

public void onload(AjaxBehaviourEvent event) {
    // ...
}

However, this is not supported for some reason. I've ever posted an issue report about that.

The following works, but it's in essence a hack.

<h:head>
    <title>JSF 2.0 onload hack</title>
    <script>
        window.onload = function() {
            document.getElementById('hidden:link').onclick();
        }
    </script>
</h:head>
<h:body>
    <h:form id="hidden" style="display:none">
        <h:commandLink id="link">
            <f:ajax event="click" listener="#{bean.onload}" />
        </h:commandLink>
    </h:form>
</h:body>

If you happen to use PrimeFaces, then you can use its <p:remoteCommand> with autoRun set to true.

<h:body>
    <h:form>
        <p:remoteCommand name="onload" action="#{bean.onload}" autoRun="true" />
    </h:form>
</h:body>

Or if you're using OmniFaces, then you can use its <o:commandScript>

<h:body>
    <h:form>
        <o:commandScript name="onload" action="#{bean.onload}" />
        <h:outputScript target="body">onload()</h:outputScript>
    </h:form>
</h:body>

The <h:outputScript target="body"> renders the <script> in the end of the <body>. The upcoming OmniFaces 2.2 will remove this need by new autorun attribute.

<h:body>
    <h:form>
        <o:commandScript name="onload" action="#{bean.onload}" autorun="true" />
    </h:form>
</h:body>
举报

相关文章推荐

Dynamics CRM2016 Subgrid之OnLoad event

在之前版本的subgrid中,可操作的空间很小,往往客户需要的很多功能都需要进行不受支持的开发才能实现,随着版本的升级,对于这块的也进行了一定的改进。    直接上示例代码,在页面的onload的方法...

JavaScript - onload事件

onload事件 test04.html var count=5; function show(){

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

ALV DataChange EVENT

在CX项目中,根据需求,自定义一个表,维护供应商的银行账号信息,当输入供应商编号时,自动在供应商名称列里自动填写供应商名称,用到了ALV  DataChange 事件 ,下面是源代码: *&---...

emulate touch event from adb

simply try to emulate user behavior by adb input cmd.
  • flxue
  • flxue
  • 2016-10-14 15:27
  • 192

JavaScript Event

解析JavaScript的事件机制 来源:http://www.nowamagic.net/javascript/js_EventAnalysis.php 事件流 JavaScr...

Javascript & event

事件的处理代码: * /*事件处理代码*/ function $(id){ return document.getElementById(id); } //添加事件 function addE...

javascript event

1.焦点事件onfocus //不是所有的元素都接受焦点,有相应用户操作的元素才行 obj.focus() //百度效果 onblur obj.blur() obj.s...

js中替换window.onload的方法 document.ready

通常我们想要在页面内容加载完成后运行 JS 时,都会使用 window.onload 来处理,比如:          window.onload = function () {  ...

Event Configuration from the Command Line

Submit New Article   June 7, 2011 9:00 PM PDT   Wi...

js中onload与onunload妙用(转载)

js中onload与onunload妙用(转载) 引言:今天周末没事,就想起前面自己做的一个B2C的电子商务平台,还有些一些地方没有完善,就想着完善,嗯,问题是这样的,在电子商务平台中有这样一个...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)