p:fileUpload 不适用于同一页面中的 pe:blockUI



使用组件在同一页面上时,组件无法正常工作

错误发生在加载第一个文件之后javascript错误发生,然后无法继续使用文件上传组件

blockUI元素如下:

<pe:blockUI widgetVar="uploadPrBroBloc" block="importPanel"
trigger=":pim:uploadProBroFile">
<em class="fa fa-spinner fa-spin"></em> #{msgs.UPLOADING}
</pe:blockUI>

文件上传UI为:

<p:fileUpload id="uploadProBroFile" auto="true"
styleClass="uploadImage"
fileUploadListener="#{importPackageController.handleProductBrowserFileUpload}"
label="#{msgs.BTN_UPLOAD_FILE}" allowTypes="/(.|/)(XLSX|xlsx)$/"
update="proBro_file_name" />

我已经做了一些搜索,问题是元素上"触发器"属性的使用似乎与有冲突

有人有主意吗,提前谢谢!

我发现了一个想法,在p:fileUpload UI事件中启用和禁用该块,而不是在blockUI中为其设置触发器:

p:fileUpload看起来像:

<p:fileUpload id="uploadProBroFile" auto="true"
onstart="PF('uploadPrBroBloc').block()" 
oncomplete="PF('uploadPrBroBloc').unblock()"
styleClass="uploadImage"
fileUploadListener="#{importPackageController.handleProductBrowserFileUpload}"
label="#{msgs.BTN_UPLOAD_FILE}" allowTypes="/(.|/)(XLSX|xlsx)$/"
update="proBro_file_name" />

blockUI元素不会使用触发器:

<pe:blockUI widgetVar="uploadPrBroBloc" block="importPanel">
<em class="fa fa-spinner fa-spin"></em> #{msgs.UPLOADING}
</pe:blockUI>

希望这能帮助任何有同样问题的人!

最新更新