我有一个使用单元格编辑器功能的数据表。在每一行中,我都有一个下拉列表,我想要的是当用户在该下拉列表中选择不同的值时,我希望更新当前行中的另一个单元格。
这是我的专栏:
<p:column headerText="Period">
<p:cellEditor>
<f:facet name="input">
<p:selectOneMenu value="#{pj_details.periodDates}" id="period" size="1" styleClass="listBoxMedium">
<p:ajax update="tabs:editProjects:projects" event="change" listener="#{ppBacker.populateProjectDates}" />
<f:attribute name="period_key" value="#{pj_details.periodDates}" />
<f:selectItems value="#{ppBacker.periods}" />
</p:selectOneMenu>
</f:facet>
<f:facet name="output">
<h:outputText value="#{pj_details.periodDates}" />
</f:facet>
</p:cellEditor>
</p:column>
我的更新有效,但它更新了输入表单,该表格将表格退出celleditor模式。
使用firebug,我可以看到我需要的更新如下所示:
tabs:editProjects:projects:1:projStartDate_input
唯一的问题是这个例子中的数字1指的是行。
那么我怎样才能在下拉列表的同一行中创建一个单元格,而不会被抛出celleditor模式?
答案 0 :(得分:1)
请检查类似的问题...... Jquery Onchange event not getting fired - Primefaces - inputText
为数据表定义rowIndexVar并在rowIndexVar的帮助下访问单元格
希望这有帮助