WW-3912 adds proper support for checked attribute

git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@1436650 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Lukasz Lenart
2013-01-21 22:07:08 +00:00
parent aba3b61670
commit e1da75d1bc
@@ -68,7 +68,7 @@ public class CheckboxListHandler extends AbstractTagHandler implements TagGenera
a.add("type", "checkbox")
.add("name", name)
.add("value", itemKeyStr)
.addIfTrue("checked", params.get("nameValue"))
.addIfTrue("checked", isChecked(params, itemKeyStr))
.addIfTrue("readonly", params.get("readonly"))
.addIfTrue("disabled", disabled)
.addIfExists("tabindex", params.get("tabindex"))
@@ -101,4 +101,18 @@ public class CheckboxListHandler extends AbstractTagHandler implements TagGenera
}
}
}
private Boolean isChecked(Map<String, Object> params, String itemKeyStr) {
Boolean checked = false;
if (itemKeyStr != null) {
String[] nameValues = (String[]) params.get("nameValue");
for (String value : nameValues) {
if (checked = value.equalsIgnoreCase(itemKeyStr)) {
break;
}
}
}
return checked;
}
}