我需要在加载页面之前将FilterValue“Albacete”应用于数据表。 我尝试使用onload命令按钮,但这不起作用。 有什么想法吗?
<p:dataTable id="datalist" value="#{delegacionesController.items}" var="item" widgetVar="itemtable"
emptyMessage="No cars found with given criteria"
filteredValue="#{delegacionesController.filteredDelegaciones}"
selectionMode="single" selection="#{delegacionesController.selected}"
rowKey="#{item.delegacion}"
rows="100">
<p:commandButton oncomplete="preFilter"/>
<p:ajax event="rowSelect" update="createButton viewButton editButton deleteButton"/>
<p:ajax event="rowUnselect" update="createButton viewButton editButton deleteButton"/>
<f:facet name="header">
<p:outputPanel>
<h:outputText value="Search all fields:" />
<p:inputText id="globalFilter" onkeyup="PF('itemtable').filter()"
style="width:150px" placeholder="Enter keyword" />
</p:outputPanel>
</f:facet>
<p:column id="preFilter" filterBy="#{item.delegacion}" rendered="false" filterValue="Albacete">
</p:column>
答案 0 :(得分:2)
您可以按如下方式解决此问题
<p:dataTable id="datalist" value="#{delegacionesController.items}" var="item" widgetVar="itemtable"
emptyMessage="No cars found with given criteria"
filteredValue="#{delegacionesController.filteredDelegaciones}"
selectionMode="single" selection="#{delegacionesController.selected}"
rowKey="#{item.delegacion}"
rows="100"
>
>
<p:commandButton oncomplete="preFilter"/>
<p:ajax event="rowSelect" update="createButton viewButton editButton deleteButton"/>
<p:ajax event="rowUnselect" update="createButton viewButton editButton deleteButton"/>
<f:facet name="header">
<p:outputPanel>
<h:outputText value="Search all fields:" />
<p:inputText id="globalFilter" onkeyup="PF('itemtable').filter()" style="width:150px" placeholder="Enter keyword" />
</p:outputPanel>
</f:facet>
<script type="text/javascript" target="body">
jQuery(document).ready(function() {
jQuery('input[id*="itemtable"]').val('Albacete');
PF('dataWidget').filter();
});
</script>
</p:datatable>
如果它将使用不同的过程
<p:column id="preFilter" filterBy="#{item.delegacion}" rendered="false" filterValue="Albacete">
</p:column>
你需要解决如下
<script type="text/javascript" target="body">
jQuery(document).ready(function() {
jQuery('input[id*="preFilter"]').val('Albacete');
PF('dataWidget').filter();
});
</script>