AJAX-弹簧控制器-JSP [英] AJAX - Spring Controller - JSP

查看:93
本文介绍了AJAX-弹簧控制器-JSP的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想向Spring MVC控制器生成AJAX(基于jQuery)请求,并将带有对象的Collection返回给jsp. 我有两个麻烦: 1. AJAX成功块不起作用(某些数据类型); 2.不知道如何向jsp显示此对象.

I want generate AJAX (based on jQuery) request to Spring MVC controller and return Collection with objects to jsp. I have two troubles: 1. AJAX success block doesn't work (something with data type); 2. Don't know how to display this objects to the jsp.

<c:forEach items="${objects}" var="object">
    size : <c:out value="${object.size}" />
</c:forEach>

^ 该代码无效.

我的AJAX请求:

    function AJAXItemRequest(name, surname) {
        $.ajax({
            type : "POST",
            dataType: "json",
            url : "/pages/users",
            data : {name: nameValue, surname: surnameValue},
            success : function(data) {
                alert('success');
            }
        });
    }

Spring MVC控制器

Spring MVC Controller

@RequestMapping(value = "/users", method = RequestMethod.POST)
public ModelMap userHandler(ModelMap model, HttpServletRequest request, @RequestParam("name") String nameValue, @RequestParam("surname") String surnameValue ) throws Exception {
        Collection<Users> users = findConnectedUsers(name, surname);
        model.addAttribute("objects", users);
    return model;
}

此外,AJAX请求有效,并且控制器成功返回模型Collection.

Also, AJAX request works and controller successfully returns model Collection.

推荐答案

这不起作用, 要将Ajax与Spring一起使用,应使用respose body而不是ModelView

This is not working , To use Ajax with Spring you should use respose body and not ModelView

@RequestMapping(value="/searchAlluserByQuery.do", method = RequestMethod.POST,headers="content-type=application/json")
@ResponseBody public List<Object> searchAlluserByQuery(@RequestBody  String query) {

return serachService.getListByqueryContains(query);

}

别忘了在课程路径上有jackson.jar 并且在视图层Jstl不适用于ajax! 您应该使用Java脚本框架如jquery 获取Json对象

Don't forget have jackson.jar on your class path and in view layer Jstl not working for ajax! you should use java script frame work such jquery to get Json object

这篇关于AJAX-弹簧控制器-JSP的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆