PrimeFaces doesn't support it. Any EL expressions in oncomplete
attribute are immediately evaluated during render response of that HTML document, not during oncomplete of the associated ajax call. Basically, the JavaScript code generated by oncomplete
attribute contains the old value as it was during the page load.
Your best bet is using RequestContext#addCallbackParam()
to add a property to the PrimeFaces-specific args
object which is available in oncomplete
scope.
RequestContext.getCurrentInstance().addCallbackParam("result", eventResized.getId() == 0);
<p:ajax ... oncomplete="resizeComplete(args.result)" />
An alternative is to use RequestContext#execute()
instead of oncomplete
to programmatically instruct PrimeFaces to execute a piece of JavaScript on complete of the ajax request.
RequestContext.getCurrentInstance().execute("resizeComplete(" + (eventResized.getId() == 0) + ")");
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…