我正在使用primefaces 5.3,我有一个p:selectOneMenu的页面如下:
<p:selectOneMenu id="addressCountry" value="#{myBean.address.country}">
<f:selectItems value="#{myBean.countries}" var="country"
itemValue="#{country.code}" itemLabel="#{country.name}" />
</p:selectOneMenu>
这是一个组合框,允许用户选择他们的国家。它显示了世界上所有国家(250个国家/地区),因此导致了性能问题。
我的页面有几个tabView,每个都有几个这样的组合框,当我切换标签并更新整个tabView时,所有这些组合框将再次渲染,并且它会增加很多有效载荷。
我知道使用SelectOneMenu,Primefaces将其分为两部分:输入和面板以保存所有可选选项。当我通过 id ( update =“:#{p:component('addressCountry')}”)更新此组件时,Primefaces将呈现两个部分,甚至是面板静态内容,无需为每个请求再次呈现。
我尝试通过css选择器进行更新(只需选择输入),但它也无效。
我们只能更新输入,在需要时排除面板吗?
任何人都可以帮助我吗? 非常感谢