qq_22153431 2016-04-04 12:21 采纳率: 0%
浏览 1460

springmvc jquery ajax 出现parser error

js代码:点击添加按钮后,会添加select,然后调用jQuery ajax后就会报错

 <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.js"></script>
<script type="text/javascript">
var count = 1;
function addFoodlist(intnumber){
    $.ajax({  
        url: "${pageContext.request.contextPath}/springmvc/getfoodlist.mvc",    //后台webservice里的方法名称  
        type: "post",  
        dataType: "json",  
        contentType: "application/json; charset=utf-8",  
        traditional: true,  
        success: function (data) {  
            var id = "select1" + (count-1);
            for (var i in data) {  
                var jsonObj =data[i];  
                var optionstring = "";  
                for (var j = 0; j < jsonObj.length; j++) {  
                    optionstring += "<option value=\"" + jsonObj[j].name + "\" >" + jsonObj[j].type + "</option>";  
                }  
                $("#id").html("<option value='请选择'>请选择...</option> "+optionstring); 

            }  
        },  
        error: function (status, errorThrown) {  
            alert("状态码:" + status.status);
            alert("错误原因:" + errorThrown); 
        }  
    });            
}

var HTML2 = '<select id="select2' + count + '">'
+'</select>';
var HTML1 = '<select id="select1' + count + '" onchange="setSecond(this)">'
+'</select>';
    function add() {  
          var tbl = document.all.ci;  
          var rows = tbl.rows.length;  
          var tr = tbl.insertRow(rows);  
          var name = tr.insertCell(0);  
          name.innerHTML = HTML1;  
          var tel = tr.insertCell(1);  
          tel.innerHTML = HTML2;  
          var rdo = tr.insertCell(2);  
          rdo.innerHTML = '<input type="radio" value="0" name="rdo' + count + '">Yes <input type="radio" value="1" name="rdo' + count + '">No';  
          var chk = tr.insertCell(3);  
          chk.innerHTML = '<input type="checkbox" value="0" name="chk' + count + '">Modify <input type="checkbox" value="1" name="chk' + count + '">Delete';  
          var del = tr.insertCell(4);  
          del.innerHTML = '<input type="button" onclick="del(this)" value="Delete">';
          addFoodlist(count);
          count++;  
        }  

        function del(btn) {  
          var tr = btn.parentElement.parentElement;  
          var tbl = tr.parentElement;  
          tbl.deleteRow(tr.rowIndex-1);  
        }  
        function setSecond(obj){  
            var val = obj.value;
            var val2 = obj.id;
            var val1 = obj.id.substring(7,9);
            if(val == 'en'){  
                var sec = document.getElementById('select2' + val1 + '');  
               // document.write(val1);
                sec.innerHTML = uHTML;  
            }else{  
                var sec = document.getElementById('select2' + val1 + '');  
               // document.write(val1);
                sec.innerHTML = mHTML;  
            }     
        } 
</script>

controller代码:

 @RequestMapping(value="/getfoodlist",method=RequestMethod.POST)
    public ModelAndView getfoodlist(){
        ModelAndView mav = new ModelAndView("/index");
        List<FoodlistPo> list = null;
        list = FoodlistDao.queryAll();
        JSON jsonArray = ListToJson.listToJson(list);
        mav.addObject("data",jsonArray);
        return mav;
    }

listToJson

import java.util.List;

import net.sf.json.JSONArray;

public class ListToJson {
    public static JSONArray listToJson(List list){

        JSONArray jsonArray = JSONArray.fromObject(list);
        System.out.println(jsonArray.toString());
        return jsonArray;
    }
}
打印出来的list的值:

[{"name":"叶类","type":"31"},{"name":"奶制品","type":"53"},{"name":"家畜","type":"51"},{"name":"家禽","type":"52"},{"name":"小吃","type":"71"},{"name":"干果","type":"42"},{"name":"干豆","type":"21"},{"name":"根茎","type":"33"},{"name":"水果","type":"41"}]

然后一直报parser error,但是这个json应该没有问题啊,一直报错,希望大神能够解决一下,初次发帖没有悬赏,请各位大神见谅!谢谢

  • 写回答

2条回答

  • devmiao 2016-04-04 15:42
    关注
    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集