利用Ajax请求数据时出现Uncaught TypeError: Cannot read property 'length' of undefined

被支配了两小时后

1、后台返回前端的数据格式不对,ajax接受的数据格式是json格式的。在后端返回的时list集合,但是添加了@ResponseBody。

@RequestMapping(value="xxx")
@ResponseBody
	 public List<xxx> getAllUser(){
		 return list;
	 }

提到@ResponseBody注解,还得看大佬解释
https://blog.csdn.net/sunroyfcb/article/details/81048675

Ajax解析Json数据
json是一种轻量级交互格式,本质上都是字符串,常用于前后端的数据交互,本质上就是字符串.
https://blog.csdn.net/qq_38601916/article/details/81939724

2.最后发现代码中有错误

$(function(){//json 格式 key:value
	$.ajax({
		"url":"../admin/getAllUser",
		type: "post",                   
	    dataType:"json", 
		success:function(result){
			var tbody = $("#fptb")
			var childtr = ""
			var list = result.list //此处使用不当;后端返回的是(list集合封装成的JOSN)
			for(var i = 0;i<list.length;i++){
				childtr+="<tr>"+"<th>"+list[i].uid+"</th>"
					+"<th>"+list[i].uname+"</th>"+"</tr>";
			}
			tbody.html(childtr);
		}
	})
});
发布了22 篇原创文章 · 获赞 0 · 访问量 434

猜你喜欢

转载自blog.csdn.net/ENDEAVOR__/article/details/105183662