附加到autoComplete

时间:2011-12-16 04:40:51

标签: primefaces

我正在使用JSF 2.0,PF M3和GF 3.1。

我的电子邮件表单中有自动完成控件。只要我从自动完成控件提供的下拉建议中进行选择,它就会替换控件中的旧值。如何使其工作,以便每次进行新选择时,所选文本将附加到先前选定的文本。

我的观点文件是:

<p:autoComplete id="emailForm"
value="#{mail.emailTo}"
required="true"
completeMethod="#{myController.complete}"
var="p"
itemLabel="#{p.lastName} &lt;#{p.email}&gt;"
itemValue="#{p}"
size="60">
<p:ajax event="itemSelect" listener="#{myController.handleSelect}"/> 
</p:autoComplete>

感谢所有帮助。

由于

1 个答案:

答案 0 :(得分:0)

selected text is appended to the previously selected text到底是什么意思?

如果我理解正确,这不是一个好习惯:意味着您的complete methodmyController.complete)执行错误。你可以修改你的代码......

无论如何,您可以将输入的键(文本)与选择的键作为建议附加,方法是将值mail.emailTo附加到DB返回的结果,由myController.complete方法处理。

更新

首先,您应该考虑升级到RC1,然后阅读手册(http://www.primefaces.org/documentation.html),以便了解simple autocompleteautocomplete with pojo support之间的差异;

在使用自己的对象(而不仅仅是列表)时,您将使用pojo支持,同样在相同的情况下使用itemLabel和itemValue。使用pojo时,您会收到转换错误,因为您必须实现自己的转换器。如果所有这些事情对你来说都很陌生,那么使用简单的自动完成功能就可以了!

考虑阅读我提供给您的所有链接,以便更好地理解Primefaces组件(特别是自动完成)