在我的Spring應用程序中,我有一個jsp,它有一個表單,我想要多個提交按鈕到同一個控制器。我需要能夠確定在控制器中按下哪個按鈕。該表格向用戶顯示多個項目,他們可以選擇其中一個項目,唯一的區別是所選項目的ID。在窗體中有多個提交按鈕,並確定在控制器中按下了哪個按鈕
在JSP中,我創建的形式是這樣的:
<form:form method="post" commandName="myCommand">
<c:forEach items="${model.availableitems}" var="item">
<span class="item">${item.description}</span>
<input type="hidden" name="id" value="${item.ID}"/>
<input type="submit" name="SelectButton" value="Select" />
</c:forEach>
</div>
</form:form>
然而,這給了我一個「數據綁定錯誤:1」不會提交到日誌中的消息和形式控制器。
我試圖將myCommand.id從int更改爲String,但是當它提交時的值是id1,id2,id3 ...(逗號分隔列表中的所有ID)無法確定按下了哪個按鈕。我不希望爲每個按鈕指定不同的操作,因爲項目數量可能會增加,並且對於它們的操作都是相同的,只是使用不同的ID。
如何在此表單中獲得多個按鈕並獲取控制器中的值?
請不要對此使用Javascript hack。這並不完全合理。 – BalusC 2010-01-08 03:32:56