我有一个带有一些数据的 selectOneListBox。选择一个值并单击“删除”按钮后,必须删除该值。我需要在我的 Bean 中执行此操作。我认为问题出在 if 语句或codeValue
我的xhtml:
<p:selectOneListbox id="list" value="#{codelistBean.codeValue2}" style="height:300px;overflow:scroll;margin:1px;width:250px"
autoUpdate="true">
<f:selectItems value="#{codelistBean.code2Value}" />
</p:selectOneListbox>`
我的豆子:
变量
String codeValue;
private static Map<String, Object> codeValue = new LinkedHashMap<String, Object>();
在这里,我将一些值放入地图:
codeValue.put(getLabel(), getValue());
删除方法
public void removeCode(ActionEvent e) {
for (Iterator<Map.Entry<String, Object>> it = codeValue.entrySet()
.iterator(); it.hasNext();) {
Entry<String, Object> entry2 = it.next();
if (entry2.getKey().equals(codeValue.get(codeValue2))) {
it.remove();
}
}
}
最后,我将地图返回给 JSF 以显示它
public Map<String, Object> getCode2Value() {
return codeValue;
}
感谢帮助!