我是完全新的HTML和那些東西。Java/html輸入類型收音機 - 參數不匹配
我嘗試創建一個網頁(使用Java/Spring Boot),其中用戶查看「Pizza」,選擇數量和大小並提交訂單。
的HTML文檔的特定部分:
<div class="input-group">
<span class="input-group-addon">Bestellmenge:</span>
<input type="number" name="amount" class="form-control" placeholder="1"/>
</div>
<form>
<input type="radio" name="pizzaSize" value="1"> Klein</input>
<input type="radio" name="pizzaSize" value="2"> Mittel</input>
<input type="radio" name="pizzaSize" value="3"> Gross</input>
</form>
<div>
<form th:action="@{/saveOrderAndReload(name=${pizza.name}, amount=${amount}, size=${pizzaSize})}" method="post">
<div class="form-group">
<div class="form-group">
<input type="submit" class="btn btn-primary btn-success" value="zur Bestellung hinzufuegen"/>
</div>
</div>
</form>
</div>
因此,當用戶按下按鈕,下面的方法被調用:
@RequestMapping("saveOrderAndReload")
public String saveOrderAndReload(@RequestParam String name, @RequestParam int size, @RequestParam int amount, Model model) {
//Do whateher
return "another html page";
}
從我的理解,該方法需要字符串,INT ,int作爲參數。該網頁提供的字符串(比薩名),INT(從輸入字段),並從無線輸入INT(?是右)
然而,試圖執行時,該方法被調用是這樣的:
http://localhost:8080/saveOrderAndReload?name=SalamiPizza&amount=&size=
失蹤的2個參數,讓我以下錯誤:
Failed to convert value of type [java.lang.String] to required type [int]; nested exception is java.lang.NumberFormatException: For input string: ""
它什麼都不會做。所有的表單元素都在表單之外......你的'th:action'只應該是'/ saveOrderAndReload',其他所有內容都應該來自你的表單。你不是在調用你提交數據到URL的方法...... –