没有添加按钮的 RichFaces FileUpload 并通过 commandLink 调用
RichFaces FileUpload without Add Button and call by commandLink
我正在使用 Richfaces 4 fileupload 上传一个文件。
但在我的情况下,我只想单击一个 link 并在浏览器中查看 select 文件。
所以在我的代码中我有 commandLink:
<a4j:commandLink id="showFileUpload"
execute="@this"
action="#{doSomething.Something(a)}"
render="@none"
oncomplete="#{rich:element('stratFileUpload')}.click();"
>
<h:graphicImage value="/images/A.png" />
</a4j:commandLink>
而 fileUpload 的部分只是一个带有 fileUpload 的表单:
<h:form id="stratFileUploadForm">
<rich:fileUpload id="stratFileUpload" execute="@this"
fileUploadListener="#{doUploadedFile}"
onuploadcomplete="
jQuery(#{rich:element('stratFileUpload')}).find('.rf-fu-itm-lnk').click();
"
noDuplicate="true" maxFilesQuantity="1"
sizeExceededLabel="#{msg['sizeExceeded']}"
uploadLabel="#{msg['upload']}" />
</h:form>
我已经在 commandLink 中调用了 id 表单和 rich:fileUpload id 但没有任何效果。
唯一的方法是使用弹出窗口,在这种情况下,它带有“+ 添加”按钮。
您确定是 RichFaces 2.0 吗?
点击文件上传没有任何反应(就像手动点击一样)。您必须单击文件输入,例如
$(".rf-fu-btn-cnt-add input").click()
但我不确定是否所有浏览器都允许您在隐藏按钮时执行此操作。
问题是因为上传浏览器被 Chrome 阻止了,在 Chrome 我无法访问浏览器来选择文件,但在 IE、Edge 中和 Firefox 我可以看到那个浏览器。 Chrome 阻止浏览器文件(弹出),因为操作和 oncomplete 之间有时间间隔
这部分代码:
<a4j:commandLink id="showFileUpload"
execute="@this"
action="#{doSomething.Something(a)}"
...
</a4j:commandLink>
我正在使用 Richfaces 4 fileupload 上传一个文件。
但在我的情况下,我只想单击一个 link 并在浏览器中查看 select 文件。
所以在我的代码中我有 commandLink:
<a4j:commandLink id="showFileUpload"
execute="@this"
action="#{doSomething.Something(a)}"
render="@none"
oncomplete="#{rich:element('stratFileUpload')}.click();"
>
<h:graphicImage value="/images/A.png" />
</a4j:commandLink>
而 fileUpload 的部分只是一个带有 fileUpload 的表单:
<h:form id="stratFileUploadForm">
<rich:fileUpload id="stratFileUpload" execute="@this"
fileUploadListener="#{doUploadedFile}"
onuploadcomplete="
jQuery(#{rich:element('stratFileUpload')}).find('.rf-fu-itm-lnk').click();
"
noDuplicate="true" maxFilesQuantity="1"
sizeExceededLabel="#{msg['sizeExceeded']}"
uploadLabel="#{msg['upload']}" />
</h:form>
我已经在 commandLink 中调用了 id 表单和 rich:fileUpload id 但没有任何效果。
唯一的方法是使用弹出窗口,在这种情况下,它带有“+ 添加”按钮。
您确定是 RichFaces 2.0 吗?
点击文件上传没有任何反应(就像手动点击一样)。您必须单击文件输入,例如
$(".rf-fu-btn-cnt-add input").click()
但我不确定是否所有浏览器都允许您在隐藏按钮时执行此操作。
问题是因为上传浏览器被 Chrome 阻止了,在 Chrome 我无法访问浏览器来选择文件,但在 IE、Edge 中和 Firefox 我可以看到那个浏览器。 Chrome 阻止浏览器文件(弹出),因为操作和 oncomplete 之间有时间间隔
这部分代码:
<a4j:commandLink id="showFileUpload"
execute="@this"
action="#{doSomething.Something(a)}"
...
</a4j:commandLink>