我写了一个JS函数,显示加载DIV,同时我加载下一个屏幕(我使用commanlinks,它工作得很好,onstart =" showthemodal" oncomlete =" hidethemodal") 。现在的问题是在这个页面中特别是我有一个数据表(我写了上面的代码)在数据表中有很多命令链接,而onstart和oncomplete在这里不起作用。我不能在不改变按钮的外观的情况下显示模态。感谢您的支持 有谁知道我该如何解决它?
在建议中感谢你。
这是我的代码:
<p:dataTable id="dataTable" var="user"
tableStyle="table-layout: auto"
value="#{gestionUsuariosController.listaUsuarios}" paginator="true"
rows="10" lazy="true" dynamic="true"
style="font-size:16px;">
<p:column styleClass="ellipsis"
sortBy="#{user.userName}">
<f:facet name="header">
<h:outputText value="Nombre" />
</f:facet>
<h:outputText id="userName" value="#{user.userName}" />
<p:tooltip for="userName" value="#{user.userName}" />
</p:column>
<p:column styleClass="ellipsis"
sortBy="#{user.userName}">
<f:facet name="header">
<h:outputText value="Password" />
</f:facet>
<h:outputText id="password" value="#{user.password}" />
<p:tooltip for="password" value="#{user.password}" />
</p:column>
<p:column styleClass="ellipsis" style="width: 80px;">
<f:facet name="header">
<h:outputText value="Accion" />
</f:facet>
<p:commandLink action="consulta" onstart="javascript:bloquearInterfaz();" oncomplete="javascript:desbloquearInterfaz();">
<h:graphicImage value="/resources/img/lupa.png" height="20px"/>
<f:param name="userName" value="#{user.userName}" />
</p:commandLink>
<p:commandLink action="modificacion" onstart="javascript:bloquearInterfaz();" oncomplete="javascript:desbloquearInterfaz();">
<h:graphicImage value="/resources/img/icono_edit.png" height="20px" />
<f:param name="userName" value="#{user.userName}" />
</p:commandLink>
<p:commandLink action="baja" onstart="javascript:bloquearInterfaz();" oncomplete="javascript:desbloquearInterfaz();">
<h:graphicImage value="/resources/img/borrar.png" height="20px" />
<f:param name="userName" value="#{user.userName}" />
</p:commandLink>
</p:column>
</p:dataTable>
答案 0 :(得分:0)
明确onstart
和oncompelte
是一种客户端方法,意味着您无法将其连接到managedBean
(执行方法)但是可以将其设置为使用p:remoteCommand
看起来像这样
<强> mypage.xhtml 强>
<script type="text/javascript">
myfunction () {
...
}
</script>
...
<p:commandButton onstart="myfunction() " />
如果要执行managedBean方法
<强> mypage.xhtml 强>
<script type="text/javascript">
myfunction () {
...
cpr();
}
</script>
...
<p:remoteCommand name="cpr" actionListener="#{managedBean.method()}" />
<p:commandButton onstart="myfunction() " />
希望能帮助你。