我正在尝试制作一个“一键式按钮”,无法在文件上传表单中发送两次动作方法的请求。这是代码:
<h:form id="importForm" enctype="multipart/form-data">
<p:messages id="messages" showDetail="true" autoUpdate="true"/>
<h:panelGrid>
<p:fileUpload value="#{importController.uploadFile}" mode="simple" />
<p:commandButton id="importButton" styleClass="commandButton" value="Send" action="#{importController.getFile}" ajax="false"/>
</h:panelGrid>
</h:form>
如果我设置onclick="importButton.disable()"
的值,则该按钮被禁用但从不调用action方法。如果我将onclick="alert('hello!')"
之类的回调作为回调,则会发送请求。如果禁用提交按钮,PrimeFaces会生成某种JS代码吗?
有任何帮助吗?谢谢!
PrimeFaces 3.3.1
Liferay 6.0.1,在Java6中嵌入了Tomcat 7.0.23
PrimeFaces Liferay Bridge 3.1.1-ga2
答案 0 :(得分:2)
如果我找到你,请尝试使用onclick="setTimeout('importButton.disable()";', 50);"
,
您不能指望禁用按钮工作(调用操作方法),但您可以在单击后禁用它...