工作问题之JQUERY.JSON请求数据问题

来源:互联网 发布:如何发布淘宝宝贝 编辑:程序博客网 时间:2024/05/16 09:20
/**
     * list页面查询操作
     * @param cell
     * @return
     */
    @RequestMapping(value="schedule/getLists.jhtml")
    public @ResponseBody Object getLists(Model model, Schedule s,String gradeid,String classid){
        String schoolid=getCompanyid();
        String uid = getUid();
        System.out.println("getList=================="+gradeid);
        System.out.println("getList=================="+classid);
        Object[] args = new Object[]{schoolid,gradeid,classid};
        List<Schedule> lists = ics.queryBySql(Schedule.class, args);
        if(lists.size()==0){
            return 0;
        }else{
        String title = lists.get(0).getCoursetitle();
        //model.addAttribute("classid",classid);
        model.addAttribute("title",title);
       /* model.addAttribute("datalist",lists);*/
            //JacksonUtils ju = new JacksonUtils();
            /*String sche = ju.writeObj2Str(su);*/
        return lists;}

    }

spring mvc获取数据

==============================================================

 jQuery.ajax({
            url: path + "/schedule/getLists.jhtml",
            data: {gradeid: $("#gradeid").val(), classid: $("#classid").val()}, // 从表单中获取数据
            type: "POST",
            error: function(request) {      // 设置表单提交出错
                alert("暂无数据");
            },
            success: function(data) {
                $("#thead").empty();
                $("#tbody").empty();
                $("#title").empty();
                var head = " <tr><td>&nbsp;</td><td>星期一</td><td>星期二</td><td>星期三</td><td>星期四</td><td>星期五</td><td>星期六</td><td>星期日</td></tr>";
                $(head).appendTo($("#thead"));
                if(data == 0 ){
                    $("#title").empty();
                    var divs = " <div class='curriculum_con'><img src='${spath }/register_pay/images/record_w.jpg' width='153' height='304' /></div>";
                    $(divs).appendTo($("#title"));
                    $("#thead").empty();
                }
                
                
                //alert(data);//2173
                var obj  = $.parseJSON(data);
                //alert(obj.length);//8
                if(obj.length>-1){
                    var title = "<h2>"+obj[0].coursetitle+"</h2>";
                    $(title).appendTo($("#title"));
                }
                //alert(title);
                var strs = "";
                for (var i = 0; i < obj.length; i++) {
                    //scoreid uid userno tname  score
                    var schedule = obj[i];
                    var str = "<tr><td>"+schedule.section+"<br />("+schedule.begintime +"-"+schedule.endtime +")</td><td>"+schedule.monday +"</td><td>"+schedule.tuesday +"</td><td>"+schedule.wednesday +"</td><td>"+schedule.thursday +"</td><td>"+schedule.friday +"</td><td>"+schedule.saturday +"</td><td>"+schedule.sunday +"</td></tr>";
                    strs += str;
                }
                $(strs).appendTo($("#tbody"));
            }
        });


javascript 代码:

问题很奇葩,当我在后台将LIST数据转换成JSON字符串传到前端后,$.parseJSON('data'),将JSON字符串转换成JSON对象后,循环遍历时它并不是对象格式,而是单个字符,后来在后台直接将LIST对象传过来,在这边使用$.parseJSON("data"),方法转换成字符串就能正常解析。不知道什么原因

0 0