Ich habe ein Spring "select" -Formular-Tag auf einer JSP-Seite eingerichtet, die zur Eingabe von Suchparametern und zur Anzeige der Ergebnisse verwendet wird. Die Spring-Formularauswahl ermöglicht es dem Benutzer, mehr als ein Element aufgrund der Option "multiple = true" auszuwählen. Ich habe ein Problem, wenn in der Ergebnisanzeige hervorgehoben wird, dass mehrere Elemente ausgewählt wurden.Spring Form Select-Tag hebt nicht mehrere Elemente hervor
Es funktioniert gut, wenn der Benutzer ein einzelnes Element auswählt, wird es auf der Wiederanzeige des Formulars hervorgehoben (wobei die eingegebenen Suchparameter weiterhin in der oberen Hälfte der Seite und die Suchergebnisse in der unteren Hälfte angezeigt werden)).
Einzel Artikel ausgewählt:
Einzelposten noch als ausgewählt gezeigt auf die Antwortanzeige:
Wenn jedoch mehrere Elemente ausgewählt werden, sind die Mehrfachauswahl nicht auf der Ergebnisanzeige hervorgehoben:
Mehrere Artikel auswählen ted:
Mehrere Elemente nicht in Ergebnisanzeige angezeigt:
ist Code der entsprechenden jsp hier:
Aktion Befehl:
<form:form action="/${localePath}/search/ssSearch.do" method="post" modelAttribute="searchCommand" onsubmit="return trackSearch();">
Code auswählen :
<tr valign="top"><td>Test Items</td><td>
<form:select path="testItems" multiple="true" size="4">
<form:option value="">All Items</form:option>
<form:options items="${testItems}" />
</form:select>
Java-Code:
Hier ist die "Testitems" Code im SearchCommand Objekt:
private String testItems;
public String getTestItems() {
return testItems;
}
public void setTestItems(String testItems) {
this.testItems = testItems;
}
der Controller Anforderungscode Ist hier:
@RequestMapping(value = "/*/search/ssSearch.do", method=RequestMethod.POST)
public String searchResults(HttpServletRequest request,
@ModelAttribute("searchCommand") SearchCommand command, ModelMap map)
throws Exception
{
return searchResultsDo(command, map, request);
}
Hier ist der Code verwendet um Test Items zu füllen:
Map<String, String> testItemsMap = new TreeMap<String, String>();
testItemsMap.put("item1 name", "item 1 value");
testItemsMap.put("item2 name", "item 2 value");
testItemsMap.put("item3 name", "item 3 value");
testItemsMap.put("item4 name", "item 4 value");
testItemsMap.put("item5 name", "item 5 value");
testItemsMap.put("item6 name", "item 6 value");
testItemsMap.put("item7 name", "item 7 value");
testItemsMap.put("item8 name", "item 8 value");
map.addAttribute("testItems", testItemsMap);
Wie kann ich mehrere ausgewählte Elemente auf der Antwortseite markieren?