我正在使用PrimeFaces。这是代码:
<h:form>
<p:dataTable...>
<p:column...>
<p:commandLink id="featuresLinkId"...>
</p:column>
</p:dataTable>
</h:form>
<p:blockUI block=":smForm" trigger="featuresLinkId">
<p:graphicImage alt="loader image" value="/images/loader.gif"/>
</p:blockUI>
加载页面时,我看到以下错误:
javax.servlet.ServletException:
Cannot find component with identifier "featuresLinkId" in view.
在这种情况下,commandLink
似乎无法用于触发blockUI
。问题是什么?
答案 0 :(得分:4)
因为它不会找到那个compnent因为它在form / datatable中。
进行更改
1 -
<h:form id="formId">
2 -
<p:dataTable id="tbl">
3 -
<p:blockUI block=":smForm" trigger=":formId:tbl:featuresLinkId">
尝试以上。
答案 1 :(得分:3)
我认为Primefaces 3.5中存在一个错误 见:How to reference p:commandLink in p:dataTable from p:blockUI trigger?
您可以尝试使用JQuery BlockUI http://www.malsup.com/jquery/block/