我正在使用带有实体管理器的自动完成功能。在大多数情况下,“ selectedVendorList”已满,因此在加载页面时,输入字段会预先填充<li/>
个元素。我希望能够使用“标题”将每个供应商的名称显示为工具提示。我可以显示一个硬编码的标题,甚至可以使用title属性与后台bean进行对话,但是,我无法弄清楚如何将特定vendor
元素的索引传递给后台bean。
我可以这样做:
<p:autoComplete id="vendorCodeCtl" multiple="true"
value="#{ue.selectedVendorList}"
completeMethod="#{ue.completeVendor}"
var="vendor" itemLabel="#{Vendor.itemCode}"
itemValue="#{Vendor}" forceSelection="true"
scrollHeight="400" converter="entityConverter" title="some hard-coded tooltip">
<p:column style="width:10%">
<h:outputText value="#{Vendor.itemName}" /> -- <h:outputText value="#{Vendor.itemCode}" />
</p:column>
</p:autoComplete>
我可以做到,它到达了bean,但是bean不知道我在谈论哪个元素:
title="#{ue.getVendorName}"
但是我想这样做:
title="#{Vendor.itemName}"
甚至是这个:
title="#{ue.getVendorName(indexofvendor)}"
同样,该问题与在自动完成字段中输入数据无关,但涉及已填充该字段的元素的标题工具提示。
我不知道,也许这是一个糟糕的设计,我应该将“选定的”元素放入数据表中,但是它可以与输入字段中剩余的元素一起使用,我只需要添加工具提示即可。
更新:检查dom结构后,我看到标题适用于“ ui-autocomplete-input-token”(整个输入字段),而不是“ ui-autocomplete-token”(单独的<li/>
元素),因此我认为不可能将标题与单独的元素相关联。我可能不得不写一些自定义的js。
谢谢!