我有一個字段的表單同名的多個輸入,可以有零到多個值命名字段與支柱
<form ...>
<input type="hidden" name="browseId[]" value="3">
<input type="hidden" name="browseId[]" value="4">
<input type="hidden" name="browseId[]" value="8">
<input type="hidden" name="browseId[]" value="10">
<input type="text" name="browseId[]">
...
</form>
我似乎,例如,:不能夠得到變量browseId
作爲一個數組,這是HTML,其他語言的標準操作過程,我很難過。實際上,我第一次在處理驗證方法的形式輸出,使用DynaActionForm的:
public static ActionMessages validatePlacement(DynaActionForm form) {
String[] rootBrowseIds = (String []) form.get("browseId");
...
}
這裏的表單bean和動作定義在struts-config.xml:
<form-bean name="placementForm" type="org.apache.struts.validator.DynaValidatorForm">
<!-- I've tried a few variations -->
<!--<form-property name="browseId" type="java.lang.String"/>-->
<!--<form-property name="browseIds" type="java.lang.String[]"/>-->
<form-property name="browseId" type="java.lang.String[]"/>
...
</form-bean>
...
<action path="/admin/editPlacement"
type="com.rc.mexp.action.admin.placementinventory.EditPlacementAction"
name="placementForm">
<forward name="success" path="/WEB-INF/pages/admin/placement/placementEdit.jsp"/>
<forward name="error" path="/admin/managePlacementInventory.do"/>
</action>
似乎只有在這種情況下,最後一個值是空的,正在被Struts接收。 WTF?
任何想法?
有沒有辦法改變我的表單bean定義,包括這樣的東西?我不是允許使用的類型裏面<
和>
字符:
<form-property name="browseId" type="java.util.Map<java.lang.String[]>"/>
,我已經審查的其他計算器Qs的:
retrieve multiple inputs of the same name from jsp to struts(似乎不相關)
Multiple inputs with same name through POST in php
Struts 2 - pattern/strategy for multiple objects on the same page
PHP和Struts 2的帖子是如何相關的? –
另外,什麼版本的Struts? –
我正在尋找如何獲得多個輸入,我看着一切似乎遠程點。此外,檢查我的標籤,我spec'd struts 1. – barclay