0

我试图在 ajax 更新后将 bean 值传递给 javascript 代码,但它不起作用。

 <p:commandButton action="#{bean.transactionStarted}" onclick="userclicked(xhr,args,status)"/>

支持 bean 通过以下方式添加值:

RequestContext.getCurrentInstance().addCallbackParam("message", "message");

当我调试时,我看到上面的语句正确执行但它没有到达 js 并且它没有发出警报:

function userclicked(xhr, status, args) {
    alert(args.message);
}
4

1 回答 1

1

因为onclick在支持bean方法完成之前被调用。你应该等到它完成。使用oncomplete,如下:

<p:commandButton action="#{bean.transactionStarted}" oncomplete="userclicked(xhr,args,status)"/>
于 2013-04-30T21:41:32.970 回答