【问题标题】:How to pass list of objects from spring mvc to jquery using ajax and json?如何使用ajax和json将对象列表从spring mvc传递给jquery?
【发布时间】:2014-07-28 17:13:40
【问题描述】:

谁能建议我,如何使用 AJAX、JQuery、JSON 将对象列表从 SpringMVC 传递到 jsp 页面并显示到 jquery。

这是我的控制器:

@RequestMapping(value="/ViewUserList", method=RequestMethod.GET)
public @ResponseBody List<WizardTO> retriveUserList(@RequestParam(value = "Role") String Role) {
        WizardDAO dao = new WizardDAO();
        List<WizardTO> userList= dao.getUserList(Role);
        return userList;
        /*String str="returned from controller";
        return str;*/   // its working
    }

这是我的 jquery 代码(在用于请求和响应处理的 jsp 文件中)

<script src="http://code.jquery.com/jquery-latest.min.js"></script>
    <script >  
    function doajax(){
        alert("in doajax");
       // jQuery("#list").jqGrid({
        $.ajax({    
            url: '\ViewUserList',
            type: 'get',
            data: "Role="+ $("#MyRole").val(),
            dataType: "json",
           /*   success:function(list){
                alert("success" +list);
            } , */
             success: function(data, textStatus, jqXHR) {
                 alert("success " +data +textStatus+jqXHR);
                 console.log(data.error);
                },
         //   error : alert("Error"),
         error: function(jqXHR, textStatus, errorThrown) {
             alert("Error "+"jqXHR "+jqXHR+" textStatus "+textStatus+" errorThrown "+errorThrown);
             console.log(textStatus, errorThrown);
            }   
/*          colNames:['UserID','FirstName', 'LastName', 'Role'], 
            colModel:[ 
                       {name:'UserID',index:'UserID', width:55}, 
                       {name:'FirstName',index:'FirstName', width:100}, 
                       {name:'LastName',index:'LastName', width:100}, 
                       {name:'Role',index:'Role', width:100}, 
                      ], 
                // rowNum:10, 
                 //rowList:[10,20,30], 
                 pager: '#UserListDiv', 
                 sortname: 'id', 
                 viewrecords: true, 
                 sortorder: "desc", 
                 caption:"Releted User List", 
                 editurl:"" 
                }).navGrid("#UserListDiv",
                        {edit:false,add:false,del:false});  */
        });
    }
</script>

当我点击特定的 href 链接时会调用这个 doajax() 方法,我也尝试使用 jquery 网格来显示接收到的对象,但我犯了一些错误,

我是 springmvc 和 jquery 的新手;前几天我才开始使用 spring-mvc jquery 和 ajax。

我想打印特定部门的表格,我试图将字符串从控制器返回到 jquery,它工作但我不知道如何将数组列表从控制器返回到 jquery。

谁能帮我解决这个问题...?? (而且我不想加载其他 JSP 页面,我想在发送请求的同一页面上加载数据,简而言之,我想在 ajax、json 和 jquery 的帮助下做到这一点)。

【问题讨论】:

  • url: '\ViewUserList', 应该是 url: '/ViewUserList', 也无法在任何地方看到 @controller 注释。你的控制器上有这个吗??
  • 你好,谢谢你的回复......,是的,我已经在顶部定义了“@controller”,并且在程序中的两个地方都定义了“url is /ViewUserList”,只是我做了一些复制粘贴错误在这里。该程序正在运行以通过 jquery 传递字符串和捕获字符串。只是我不知道如何传递对象列表以及如何使用 jquery 在 jsp 页面中的表中显示对象数据。

标签: javascript jquery ajax json spring-mvc


【解决方案1】:

有两件事我注意到并发表了评论:

  1. 您的 ajax 的 url : "\ViewUserList" 没有使用正确的斜线 \
  2. 你还没有贴出控制器的注解@Controller

所以你可以添加这两个,看看是否有帮助:

控制器:

@Controller
@RequestMapping(value="/ViewUserList", method=RequestMethod.GET)

jquery ajax:

改变这个:

url: '\ViewUserList',

到这里:

url: '/ViewUserList',

检查这是否解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 2012-10-25
    • 2017-12-26
    • 2013-12-13
    相关资源
    最近更新 更多