gpt4 book ai didi

jsf-2 - 在 primefaces 数据表中设置从支持 bean 中选择的行

转载 作者:行者123 更新时间:2023-12-04 07:41:44 24 4
gpt4 key购买 nike

我正在使用带有可点击行的 primefaces 数据表,我需要找到如何从支持 bean 设置选定行的方法。

有我的数据表定义:

<p:dataTable id="cablePathTable" var="cablePath" value="#{commonTableBean.cableLazyModel}" rows="100"
selectionMode="single" selection="#{commonTableBean.selectedCablePathTblRow}"
rowIndexVar="rowIndex" widgetVar="datatableVar"
emptyMessage="---">
<p:ajax event="rowSelect" process="@this" update=":form:portFieldset" />

<p:column headerText="No">
<h:outputText value="#{cablePath.column1}" />
</p:column>
<p:column headerText="Port A">
<h:outputText value="#{cablePath.column4}" />
</p:column>
<p:column headerText="Port B">
<h:outputText value="#{cablePath.column5}" />
</p:column>

我尝试了以下方法,但没有成功。
在支持 bean 中,我添加了方法:
public void test(){
DataTable dataTable = (DataTable) FacesContext.getCurrentInstance().getViewRoot().findComponent("form:cablePathTable");
dataTable.setRowIndex(2);
}

我在 XHTML 页面中添加了测试按钮:
<p:commandButton process="@this" update=":form:cablePathTable" value="set2row" action="commonTableBean.test"/>

但是数据表上没有任何变化,选择没有改变......

请任何想法如何解决这个问题?

最佳答案

只需设置后面的值 selection="#{commonTableBean.selectedCablePathTblRow}" .

public void test(){
selectedCablePathTblRow = cablepath;
}

关于jsf-2 - 在 primefaces 数据表中设置从支持 bean 中选择的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11087927/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com