【发布时间】:2013-12-29 14:15:42
【问题描述】:
Hello Guys,
<h:form id="targetsMenuPanelForm">
<p:commandButton id="cancel" ajax="false" process="@this" value="Cancel"
action="#{myMenuTabsBean.cancel}" styleClass="uta-button button-red" />
<p:commandButton id="save" process="@form" action="#{myMenuTabsBean.save}"
update="@form" value="Save" />
<p:commandButton id="new" action="#{myBackingbean.addEmptyRow}"
process="@this" update="myTable" value="New" />
<p:commandButton id="delete" value="Delete"
action="#{myBackingbean.deleteRow}" process="@form" update="@form" />
<p:dataTable id="myTable" value="#{myBackingbean.myDataModel}"
var="myList" selection="#{myBackingbean.selectedRows}">
<p:column selectionMode="multiple" id="select" />
<p:column id="namecol" headerText="Name">
<p:inputText id="name" value="#{myList.targetName}" />
</p:column>
<p:column id="typecol" headerText="Type">
<p:selectOneMenu id="types" value="#{myList.type}">
<f:selectItem itemLabel="Direct Dial" itemValue="DirectDial" />
<f:selectItem itemLabel="Private Wire" itemValue="PrivateWire" />
</p:selectOneMenu>
</p:column>
</p:dataTable>
</h:form>
上面的代码是我的Xhtml。每次新建按钮都会在列表中添加一个空行
它被点击。
现在假设我通过单击新按钮两次添加了两个空行。现在我已经用一些数据填充了两行并检查了第二行复选框/选定的行并单击了保存按钮,它将第二行保存到数据库中。
问题始终是第一行被填充到映射数组中
到数据表的选择属性,并正在保存到数据库中。
假设如果我保持第一行为空并填充第二行并检查/选择第二个
行并尝试保存它,应用程序会抛出错误以输入名称,现在
选择第一行而不是第二行。如果我取消选中/取消选择第一行并且
选择/检查第二行并尝试保存现在一切顺利。
谁能帮我解决这个问题...在此先感谢各位。
【问题讨论】:
标签: jsf jsf-2 primefaces