Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Primefaces Datatable单选按钮提交错误值_Primefaces_Jsf 2_Selectoneradio - Fatal编程技术网

Primefaces Datatable单选按钮提交错误值

Primefaces Datatable单选按钮提交错误值,primefaces,jsf-2,selectoneradio,Primefaces,Jsf 2,Selectoneradio,我得到了一个带有自定义布局选择器Radio的数据表。它不会在第一行之后提交正确的值 这是数据表: <h:form id="dataTableForm"> <br /> <p:dataTable id="absenceTable" var="absence" widgetVar="absenceTable" value="#{adminController.absenceList}" rowIndexVar="r

我得到了一个带有自定义布局选择器Radio的数据表。它不会在第一行之后提交正确的值

这是数据表:

<h:form id="dataTableForm">
        <br />
        <p:dataTable id="absenceTable" var="absence" widgetVar="absenceTable"
            value="#{adminController.absenceList}" rowIndexVar="rowIndex"
            emptyMessage="Keine Absenzen mit ausstehender Genehmigung gefunden"
            style="width:70%;margin-left:15%;margin-right:15%;margin-bottom:20px;margin-top:10px;"
            rowKey="#{absence.id}" rows="30" paginator="true"
            paginatorPosition="bottom" paginatorAlwaysVisible="false"
            paginatorTemplate="{PageLinks}" sortBy="#{absence.startDate}"
            sortOrder="descending"
            filteredValue="#{adminController.filteredAbsences}">
            <f:facet name="header">Mitarbeiterabsenzen mit ausstehender Genehmigung</f:facet>
            <p:column>
            <p:selectOneRadio id="action" value="#{absence.status}" required="false"
                layout="custom" >
                <f:selectItem itemValue="PENDING" noSelectionOption="true" />
                <f:selectItem itemValue="APPROVED" />
                <f:selectItem itemValue="REJECTED" />
                <p:ajax event="valueChange" immediate="true" listener="#{adminController.checkBoxListener}" />
            </p:selectOneRadio>
            </p:column>
            <p:column width="20">
                <p:radioButton for="action" itemIndex="0" />
            </p:column>
            <p:column width="20">
                <p:radioButton for="action" itemIndex="1" />
            </p:column>
            <p:column width="20">
                <p:radioButton for="action" itemIndex="2" />
            </p:column>
            <f:facet name="footer">
                <p:commandButton value="Speichern"
                    action="#{adminController.save()}" update="absenceTable" />
            </f:facet>
        </p:dataTable>
    </h:form>


麻省理工学院遗传工程学院
行索引和缺勤循环变量在datatable上定义

都是一样的

问题是,不知何故,它只适用于第一行。其他行提交“开”,而不是值。我在生成的html中发现,它们没有像第一行中的单选按钮那样提供值标记:

我想这会是一个愚蠢的语法问题或者其他什么。。。这是我点击第一行以外的任何内容时得到的结果:

我在PF5.2上运行这是PF5.2中的一个错误

代码在PF5.3上运行平稳这是PF5.2中的一个错误


该代码在PF5.3上运行平稳

首先删除单选按钮的“生成”id。他们应该自动在“索引”前面加上前缀。。并且总是试着发一封邮件。“循环”现在不可见删除ID没有帮助。。我更新了问题,并尝试将
for=“dataTableForm:absenceTable:{rowIndex}:action”
更改为
for=“action”
。JSF负责为您建立索引。(除了widgetId之外)但那是PF,而不是JSF。顺便问一下,您使用的是什么PF版本?你也可以发布一个最小的bean,这样你的问题就变成了一个简单的问题,我可以很容易地复制一个简单的版本,
,像你在PF 6.1上为我工作的专栏一样。。。(未在5.2上测试,因为我的个人showcase不再在该版本上运行)。因此,问题要么在您使用的版本中,要么在不可见的代码中,要么在datatable上的附加属性中。这是我能提供的所有信息。。。干杯。首先删除单选按钮的“生成”id。他们应该自动在“索引”前面加上前缀。。并且总是试着发一封邮件。“循环”现在不可见删除ID没有帮助。。我更新了问题,并尝试将
for=“dataTableForm:absenceTable:{rowIndex}:action”
更改为
for=“action”
。JSF负责为您建立索引。(除了widgetId之外)但那是PF,而不是JSF。顺便问一下,您使用的是什么PF版本?你也可以发布一个最小的bean,这样你的问题就变成了一个简单的问题,我可以很容易地复制一个简单的版本,
,像你在PF 6.1上为我工作的专栏一样。。。(未在5.2上测试,因为我的个人showcase不再在该版本上运行)。因此,问题要么在您使用的版本中,要么在不可见的代码中,要么在datatable上的附加属性中。这是我能提供的所有信息。。。干杯。很好,下次遇到问题时,请始终创建并尝试更新版本。很好,下次遇到问题时,请始终创建并尝试更新版本。