[英]Render p:commandButton after uploading a file p:fileUpload
我有一个带有p:fileUpload和p:commandButton的页面,第一次访问该页面时,该按钮应该被隐藏,并且在上传文件后应该呈现该按钮。 我的代码如下所示,关于如何实现这一点的任何想法?
<h:form enctype="multipart/form-data" >
<p:fileUpload
fileUploadListener="#{fileUploadController.handleFileUpload}"
mode="advanced"
multiple="true"
sizeLimit="2000000000"
allowTypes="/(\.|\/)(txt|csv)$/"
required="true"
label="Seleccionar"
uploadLabel="Subir a servidor"
cancelLabel="Cancelar">
</p:fileUpload>
<p:commandButton id="btnValidar" value=" Validar "
rendered="#{fileUploadController.btnRendered}"
style="margin-left: 430px;"/>
</h:form>
只需使用update
属性,就像在所有其他PrimeFaces ajax组件上一样。
<p:fileUpload update="@form" />
我当然假设你在handleFileUpload
方法中设置了btnRendered
为true
。
请注意,您无法将其设置为按钮本身的ID,因为当btnRendered
默认为false
时,它不会出现在HTML DOM树中。 它就是JavaScript,它根据检索到的Ajax响应在HTML DOM树中执行更新作业。 如果要单独更新按钮而不是表单,请将其包装在HTML DOM树中始终存在的另一个组件中:
<h:panelGroup id="btnValidar">
<p:commandButton rendered="#{fileUploadController.btnRendered}" />
</h:panelGroup>
并按如下方式更新
<p:fileUpload update="btnValidar" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.