【发布时间】:2012-01-07 21:01:11
【问题描述】:
我在我的项目的搜索表单中使用 PrimeFaces p:autoComplete 小部件。用户可以选择他想要包含多少和哪些表单元素(搜索参数),所以我需要为每个表单元素传递一个 ID 到 completeMethod。我尝试添加 onfocus=".." 以将对象传递给 bean,但只有在第一次加载元素时才会激活。
我的问题:如何将属性传递给completeMethod?
元素的XHTML(简单):
<p:autoComplete value="#{filter.value}" label="dynamic search attribute"
completeMethod="#{myBean.complete}" />
豆子(简单):
@Named("myBean")
public class MyController implements Serializable {
public List<String> complete(String query) {
List<String> results = new ArrayList<String>();
// ... code
return results;
}
}
理论上这似乎是完美的解决方案:
<p:autoComplete value="#{filter.value}" label="dynamic search attribute"
completeMethod="#{myBean.complete(filter)}" />
还有 bean:
@Named("myBean")
public class MyController implements Serializable {
public List<String> complete(String query, FilterObject o) {
List<String> results = new ArrayList<String>();
// ... database query based on FilterObject o
return results;
}
}
【问题讨论】:
标签: jsf-2 autocomplete primefaces