jsf - How to Block UI based on method value -
i need in blocking form based on returned value method updatedatatable return "yes", if commandbutton "print" fired. if fired, need block ui on close of dialog, otherwise not block it. code , blocking each time, closing dialog:
<p:dialog id="ss" header="sss" widgetvar="ss" modal="true" showeffect="fade" hideeffect="fade" resizable="false" > <p:ajax event="close" listener="#{hrd.updatedatatable}"/> <p:blockui trigger="ss" block=":requests"> <p:graphicimage width="50" value="/resources/images/ajax.gif"> </p:graphicimage> </p:blockui> <<p:commandbutton value="print" id="print" actionlistener="#{hrd.updateprint}"/> </p:dialog>
remove trigger , add widgetvar p:blockui component able trigger directly.
<p:blockui block=":requests" widgetvar="blockuivar"> have print button set global js variable.
<p:commandbutton value="print" id="print" actionlistener="#{hrd.updateprint}" onclick="window.printclicked = true;"/> check variable state , trigger ui block if necessary @ start of close request. reset variable state in case dialog reopened.
<p:ajax event="close" listener="#{hrd.updatedatatable}" onstart="if (window.printclicked) { pf('blockuivar').show(); window.printclicked = false; }"/>
Comments
Post a Comment