Es gibt eine Auswahl Dropdown und ich möchte "Keine Auswahl" Element zur Liste hinzufügen, die mir 'Null' geben sollte, wenn sie gesendet wird. Ich verwende SimpleFormController abgeleiteten Controller.Spring MVC Form-Tags: Gibt es eine Standardmethode zum Hinzufügen von "Keine Auswahl"?
protected Map referenceData(HttpServletRequest httpServletRequest, Object o, Errors errors) throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
map.put("countryList", Arrays.asList(Country.values()));
return map;
}
Und der JSPX Teil ist
<form:select path="country" items="${countryList}" title="country"/>
Eine mögliche Lösung bei der Zugabe eines Nullwertes an den Anfang der Liste zu sein scheint, und dann eine benutzerdefinierte Property mit diesem ‚Null‘ disply als ' Keine Auswahl'. Gibt es eine bessere Lösung?
@Edit: Ich habe dies mit einer benutzerdefinierten Validierung Annotation gelöst, die überprüft, ob der ausgewählte Wert "keine Auswahl" ist. Gibt es eine standardisierte und einfachere Lösung?
Watch out mit der benannten Entität ' ' in jspx Seiten (es führt vor kurzem zu Fehlern für mich, dass die Entität nicht definiert ist, oder einige solche). Es scheint sicherer zu sein, auf das nicht-brechende Leerzeichen durch seinen Code zu verweisen: ' ' – Michael
Auf diese Weise wird NoSelection einen leeren String, nicht 'null', obwohl. Wert = $ {null} sollte Null schreiben. – javabot