Ich muss eine Liste der Produkte nach Preis oder Name, aufsteigend oder absteigend bestellen. Das Back-End ist fertig, ich muss nur einen Parameter senden, der sagt, welche Option aus einer Dropdown-Liste ausgewählt wurde.So bestellen Sie eine Seite mit Artikeln in JSP
<!-- Dropdown for ORDER -->
<label for="order" class="control-label">Order by</label>
<select class="form-control" name="order" id="order" onchange="...">
<option value="priceAsc" selected>Price: lowest first</option>
<option value="priceDesc">Price: highest first</option>
<option value="nameAsc">A - Z</option>
<option value="nameDesc">Z - A</option>
</select>
Bei onchange
habe ich wie onchange="location=location + '/order/'+ this.options[this.selectedIndex].value;"
verschiedene Dinge ausprobiert und in der Steuerung abgebildet ich den /order/{orderBy}"
Link. Das Problem bei dieser Methode war, dass ich einmal auf ein Element geklickt wird, würde der Link /products/order/option_here
werden, und wenn ich noch einmal klicken würde, würde /order/option_here
wieder am Ende der Verbindung hinzugefügt werden, was /products/order/option_here/order/option_here
Ich habe auch versucht erhalten den Wert von order
in RequestMethod.GET
, aber hat nicht funktioniert (ich glaube, weil die Seite Konstrukte nach dem GET
Verfahren beendet ist)
die Seite, die ich zu sortieren bin versucht /products
genannt wird, so wie kann ich es sortieren aus, sobald der Benutzer seine Option ausgewählt hat?
Dies ist meine Methode in @Controller
@RequestMapping(value = "/order/{orderBy}, method = RequestMethod.GET)
public ModelAndView sortPageBy(@PathVariable String orderBy){
ModelAndView modelAndView = new ModelAndView("viewProducts");
List<Product> sortedProducts = productService.orderProducts(orderBy);
modelAndView.addObject("products", sortedProducts);
return modelAndView;
}
abgebildet Wir sind nicht erlaubt zu jQuery zu verwenden.
, warum Sie nicht jQuery verwenden dürfen !! Der einfachste Ansatz besteht darin, den Parameter orderBy auf der Client-Seite abzurufen und über Ajax an Ihren Controller zu senden und dann die Produktliste zu erhalten !! Ich sehe, dass du die Dinge dort irgendwie verkomplizierst. – PacMan
Ich mache die Regeln nicht ... folge ihnen nur: \ – SnuKies
Wo willst du es sortieren? In der Steuerung ?! –