在childwindow中下载primefaces文件
我在在childwindow中下载primefaces文件,primefaces,Primefaces,我在primefaces数据表中有p:filedownload,如下所示 <p:column> <p:commandLink id="downloadLink" style="color:blue;text-decoration:underline; " disabled="#{ShipAttach.deleteSelect}" onc
primefaces
数据表中有p:filedownload
,如下所示
<p:column>
<p:commandLink id="downloadLink"
style="color:blue;text-decoration:underline; "
disabled="#{ShipAttach.deleteSelect}" onclick="trailNewpage();"
value="#{ShipAttach.bpmfilename}" ajax="false">
<p:fileDownload contentDisposition="inline"
value="#{filedownloadController.fileDownload(ShipAttach)}" />
</p:commandLink>
</p:column>
当我单击在同一窗口中打开文件的链接时,我还可以通过指定属性
target=“\u blank”
在新选项卡中打开文件,我希望这些文件在Childwindow中打开,请先帮我谢谢。我在newTab中打开文件下载时遇到了与commandLink完全相同的问题。我被迫使用setTimeout使其工作(但我不明白为什么)
使用旧代码,链接会打开具有相同页面的新选项卡,但不会打开文件下载:
<h:commandLink
onclick="doStuff()"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
<h:commandLink
onclick="setTimeout(doStuff, 0)"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
使用新代码,链接将打开带有文件下载的新选项卡:
<h:commandLink
onclick="doStuff()"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
<h:commandLink
onclick="setTimeout(doStuff, 0)"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
我在newTab中打开文件下载时遇到了与commandLink完全相同的问题。我被迫使用setTimeout使其工作(但我不明白为什么) 使用旧代码,链接会打开具有相同页面的新选项卡,但不会打开文件下载:
<h:commandLink
onclick="doStuff()"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
<h:commandLink
onclick="setTimeout(doStuff, 0)"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
使用新代码,链接将打开带有文件下载的新选项卡:
<h:commandLink
onclick="doStuff()"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
<h:commandLink
onclick="setTimeout(doStuff, 0)"
target="_blank">
<p:fileDownload contentDisposition="inline" value="#{myFile}"/>
</h:commandLink>
尝试首先通过普通链接打开新窗口。在那里加载一个页面,在那里你可以自动点击下载按钮。非常简单…实际上数据表中没有链接,例如:如果有10行,如果我想从第一行下载一个文件,我想在第一行单击,使文件内容显示在子窗口名称中。。。当target=“\u blank”打开新选项卡或子窗口是否受浏览器设置控制时,在包含指向要下载文件的参数的新窗口中创建一个执行“get请求”(因此不是commandLink)的普通链接…@Kukeltje?是的,我今晚学到了一些东西。根据规范,h:commandLink
支持目标。Hmmmmp:commandLink
不尝试首先通过普通链接打开新窗口。在那里加载一个页面,在那里你可以自动点击下载按钮。非常简单…实际上数据表中没有链接,例如:如果有10行,如果我想从第一行下载一个文件,我想在第一行单击,使文件内容显示在子窗口名称中。。。当target=“\u blank”打开新选项卡或子窗口是否受浏览器设置控制时,在包含指向要下载文件的参数的新窗口中创建一个执行“get请求”(因此不是commandLink)的普通链接…@Kukeltje?是的,我今晚学到了一些东西。根据规范,h:commandLink
支持目标。Hmmmmp:commandLink
不做你的“doStuff”做什么?如果你把它拿走怎么办?那么它能工作吗?哦,这个问题是关于PrimeFacesp:commandLink
,而不是h:commandLink
。。。所以你的回答在这里没有帮助。也许如果你用你的原始代码创建一个新的问题(在flavor中),我们可以看到你的问题是什么,以及为什么你的更改对你有用你的“doStuff”做了什么?如果你把它拿走怎么办?那么它能工作吗?哦,这个问题是关于PrimeFacesp:commandLink
,而不是h:commandLink
。。。所以你的回答在这里没有帮助。也许如果你用你的原始代码创建一个新的问题(在flavor中),我们可以看到你的问题是什么,以及为什么你的更改对你有效