将值从控制器添加到下拉列表Spring MVC

时间:2015-04-23 08:38:04

标签: java ajax spring spring-mvc

在我的控制器中我有

@RequestMapping(value="/getCounties", method = {RequestMethod.GET},produces=MediaType.Application_JSON_VALUE)
public @Responcebody List<Counties>(@RequestParam String province){

    List<Counties> county = this.xService.getCounties(county);
    return county;
}

此方法将表单中选择的省份发送到存储库并加入该省内的县。

在表单的下拉列表中,如何将这些值返回到下拉列表中。

我目前有

<tr>
    <td>
        <form:select path="cdGcd" class="textbox" onclick="getCounty()">  
            <form:option value="-" label="Please Select"/>
            <form:options path="county" items='${county}' itemValue = "countycode" itemLabel="countydescription"/>
        </form:select>
    </td>
</tr>

1 个答案:

答案 0 :(得分:1)

您无法直接从控制器返回List。 要将数据从控制器传递到JSP,您需要在Model中添加数据并返回相应的JSP页面。

所以你需要改变你的方法,

@RequestMapping(value="/getCounties", method = {RequestMethod.GET})
public String getCountries(@RequestParam String province, Model model){
    List<Counties> county = this.xService.getCounties(county);
    model.addAttribute("county",county);
    return "jsp page";
}

如果你想使用AJAX实现这一点,那么你需要从控制器返回JsonObject。