Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从服务器端调用javascript方法_Java_Javascript_Jsf_Primefaces - Fatal编程技术网

从服务器端调用javascript方法

从服务器端调用javascript方法,java,javascript,jsf,primefaces,Java,Javascript,Jsf,Primefaces,我想从服务器端执行一个javascript方法。 在我的例子中,当我更改一个选项卡时,我想在托管bean中调用javascript方法。 有没有办法做到这一点 我尝试使用RequestContext。但是在侦听器方法完成执行之前,它不会被调用 RequestContext在当前ajax请求完成后执行javascript。我想在ajax请求开始时使用javascript方法 javascript方法(我想调用)是客户端的wriiten 通过 及 但是没有找到解决这个问题的办法 使用JSF2.1和

我想从服务器端执行一个javascript方法。 在我的例子中,当我更改一个选项卡时,我想在托管bean中调用javascript方法。 有没有办法做到这一点

我尝试使用RequestContext。但是在侦听器方法完成执行之前,它不会被调用


RequestContext在当前ajax请求完成后执行javascript。我想在ajax请求开始时使用javascript方法

javascript方法(我想调用)是客户端的wriiten

通过 及

但是没有找到解决这个问题的办法

使用JSF2.1和PrimeFaces4.0

我的代码是

XHTML

   <p:tabView id="detailsId" widgetVar="detailsVar" >
        <p:ajax event="tabChange"  listener="#{mywBean.onTabChange}"/>
        <p:tab title="Service">
        </p:tab>
        <p:tab title="Books">
        </p:tab>
    </p:tabView>

<script>

function myJavascriptMethod() {
     alert("Hello All..");
     // Some functionality
}

</script>
您可以尝试:

String js="alert('Hello World!!')"; // write your javascript
RequestContext.getCurrentInstance().execute(js);
Javadoc:


RequestContext在当前ajax请求完成后执行javascript。我想在ajax请求开始时使用javascript方法。为什么不先执行javascript,完成后调用托管Bean?可以使用PrimeFaces远程命令组件()。
String js="alert('Hello World!!')"; // write your javascript
RequestContext.getCurrentInstance().execute(js);