2

JSP

<select name="requirements"  style="width:150px;" id="requirements1">
                                        <option selected="selected" value="o Special Assistance">No Special Assistance</option>
                                        <option value="Assistance climbing steps">Assistance climbing steps</option>
                                        <option value="Assistance within the plane">Assistance within the plane</option>
                                        <option value="Blind passenger">Blind passenger</option>
                                        <option value="Hearing impaired">Hearing impaired</option>
                                        <option value="Wheelchair within terminal">Wheelchair within terminal</option>
                                    </select>
<select name="requirements"  style="width:150px;" id="requirements2">
                                        <option selected="selected" value="o Special Assistance">No Special Assistance</option>
                                        <option value="Assistance climbing steps">Assistance climbing steps</option>
                                        <option value="Assistance within the plane">Assistance within the plane</option>
                                        <option value="Blind passenger">Blind passenger</option>
                                        <option value="Hearing impaired">Hearing impaired</option>
                                        <option value="Wheelchair within terminal">Wheelchair within terminal</option>
                                    </select><input type="text" name="specialrequest" id="specialrequest1" />
        </form>

クラス

public class PassengerDetailDTO {

    private String[] requirements;
    private String specialrequest;
}

そしてコントローラーで

@RequestMapping(value = "/manualbooking.htm", method = RequestMethod.POST)
    public String doManualBooking(HttpServletRequest httpServletRequest,
            PassengerDetailDTO passengerDetailDTO,  ModelMap map) {
        LOGGER.info("Manual Booking Request");

        LOGGER.info(passengerDetailDTO.toString());

        return "manualbooking";
    }

複数のドロップダウン ボックスがある場合、送信後のフォーム要件は常に null です。それを解決する方法?

4

2 に答える 2

1

<select>ボックス名が配列を表していることを確認してください[]。例えば:

<select name="requirements[0]" ..>

<select name="requirements[1]" ..>

このデモを確認してください:Spring MVC MultiRowForm

于 2012-12-19T13:22:45.090 に答える
-1

バッキング Bean に 2 つの異なる文字列フィールドを追加できます。

private String requirement1;
private String requirement2;

そして、これに似た構造を使用します

 <form:select path="requirement1" multiple="false" id="requirement1">
    <form:options items="${yourRequirementsAsACollection}" />
 </form:select>


 <form:select path="requirement2" multiple="false" id="requirement2">
    <form:options items="${yourRequirementsAsACollection}" />
 </form:select>

選択した値をそれぞれ最初または 2 番目のフィールドに書き込みます。

一方、複数選択ボックスを使用することもできます。この場合、選択されたすべての値が 1 つのフィールドでカンマ区切りになります。

 private String requirements; // Ends up comma-separated, ie "req1, req2"


 <form:select path="requirements" multiple="true" id="requirements">
    <form:options items="${yourRequirementsAsACollection}" />
 </form:select>
于 2012-12-19T13:24:40.213 に答える