在ajax POST中添加模型属性

时间:2013-11-28 10:40:31

标签: jquery ajax spring-mvc

我用json数据进行ajax POST调用,我想在方法POST中设置一个模型属性,但它不起作用。

我在控制器中的请求:

@RequestMapping(value="reubicar/idhu", method=RequestMethod.POST)
@ResponseStatus(HttpStatus.ACCEPTED)
public @ResponseBody Ubicacion detalleReubicarPorIdhu(@RequestBody Ubicacion jsonString, Model model) {
    List<Ubicacion> ubiLibres = userService.getUbicacionesLibres(jsonString.getReferencia(),"SUGERENCIA");
    model.addAttribute("ubilibres", ubiLibres);
    model.addAttribute("prueba", "esto es una prueba");
    return userService.getDetalleReubicar(jsonString);
}

在此请求中,我想将属性ubilibres和prueba添加到模型中。

jquery函数:

var doButtonPress = function( idhuSel, ubicacionSel, referenciaSel ) {
            var datos = {
                    idhu: idhuSel,
                    ubicacion: ubicacionSel,
                    referencia: referenciaSel,
            }

            $.ajax({
                url: '${pageContext.request.contextPath}/reubicar/idhu/',
                type: "POST",
                contentType: "application/json; charset=utf-8",
                //datatype: "json",
                data: JSON.stringify(datos),
                async: false,
                cache: false,
                processData: false,
                success: function(data) {
                    alert(${prueba});
                },
                error: function(dataError) {

                }
            });                             
        }

当我在成功函数中使用它时,警告($ {prueba}),它显示值UNDEFINED。当我在JSP中使用它时也是如此:

<label for="inputComReubicar">${prueba}:</label>

问题出在哪里?

1 个答案:

答案 0 :(得分:0)

我还没有找到解决方案,但我更改了ResponseBody并将值添加到返回的模型中。