怎么用ajax获取后台一个list集合,并在页面显示出来?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么用ajax获取后台一个list集合,并在页面显示出来?相关的知识,希望对你有一定的参考价值。
参考技术A1、首先确认一下,返回的obj是对象数组还是json串,如果是对象数组,那么你的用法应该是没有问题的,如果是json串,你需要用 var list = eval("("+obj+")"); 将其转换为对象数组,然后再取list.length。
2、如果是字符串的话,应该是没有问题的,下面代码完全复制到一个新网页中试试:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<button onclick="showlength();">读取</button>
<script type="text/javascript">
function showlength()
var obj = "['device':'2014年','geekbench':'1','device':'2015年','geekbench':'8']";
var list = eval("(" + obj + ")");
alert(list.length);
</script>
</body>
</html>
3、也可以考虑JSON,或者XML 把返回XML文档,如:<?xml version="1.0" ?><books><book id="0001"> <name>Thik</name></book><book id="0002"> <name>Thik344</name></book></books> 然后用Javascript解析这段XML,按照你想要的方式呈现在页面。
jsp加载时怎么获取后台list集合并遍历
我后台有两个list集合,jsp页面加载时,我要先获得集合的值,然后把集合的值遍历出来,成为jsp页面的左菜单,一个list是菜单的名,一个是菜单的标记参数(如下面的,emp,date,user,等参数)。求详细代码,步骤我明白,代码不会写。
下面是我jsp代码,目前是写死的。我不用struts2什么的框架,就是 servlet。
<body class="frame_class">
<div id="topDataTd" width="450" height="66" style="background-color: #5356FF">
<h1 style="font-size: 45px;color: #FFFFFF;"> Excel 管理</h1>
</div>
<div id="leftPanel">
<div id="menuList" >
<h1>excel添加</h1>
<ul style="">
<li><a href="skip.do?params=emp" onclick="change(this)" target="mainFrame">emp单表</a></li>
<li><a href="skip.do?params=date" onclick="change(this)" target="mainFrame">日期-单表</a></li>
<li><a href="skip.do?params=user" onclick="change(this)" target="mainFrame">user单表</a></li>
<li><a href="skip.do?params=role" onclick="change(this)" target="mainFrame">role单表</a></li>
1、首先,需要JSTL-1.2的jar包,自行百度搜索下载。
2、将JSTL-1.2的jar包放入web工程的lib文件夹下。
3、在需要的遍历List的页面中引入JSTL的核心标签库。
4、使用<c:forEach><c:forEach/>标签遍历List数组。
5、【items】中使用EL表达式,来拿到List数组。
6、【var】用指定变量名来接收遍历数组的值。
7、利用EL表达式,将var中的值取出,即可。
8、展示效果。
参考技术A 代码示例,供参考。<html>
<head>
</head>
<body>
<body class="frame_class">
<div id="topDataTd" width="450" height="66" style="background-color: #5356FF">
<h1 style="font-size: 45px;color: #FFFFFF;"> Excel 管理</h1>
</div>
<div id="leftPanel">
<div id="menuList" >
<h1>excel添加</h1>
<ul style="">
<%!
list=request.getattribute("你在request中设置的列表名称")//获取列表
PrintWriter out = response.getWriter();
For(int i=0;i<list.size();i++)//for循环遍历列表,输出ul中的li
out.println("<li href='"+list[i].getUrl()+"' >"+list[i].getName()+"</li>")
%>
<ul>
</body>
</html>追问
很强大,但是它怎么知道去那个action中取list集合呢?这个在那写?我是刚上来就加载这个页面。
追答刚上来就加载这个jsp页面? 那你的数据是从哪里来的?比如是数据库,你可以把
list=request.getattribute("你在request中设置的列表名称")
改成:
UserDao ud = new UserDao();
list = ud.getUserList();
所以,你在java中是怎么取list中的数据,那在jsp的<% %>中就怎么取好了。追问
非常感谢,我去试试。能加我Q吗? 237613433
本回答被提问者采纳 参考技术B struts标签可以自动遍历获取的列表,不用struts,我觉得可以在页面中嵌入java代码的方式实现:现在servlet的方法里用request.setattribute添加列表<%!
list=request.getattribute()//获取列表
%>
<% for()//再写一个for循环遍历
%>
<li><%=获取列表值 %></li>
<%
%>
你试试看吧追问
我需要在页面加载时获取到这个list。然后显示成这个页面的菜单。该怎么弄呢?
参考技术C 不用其他框架,就用servlet,你在后台处理时,session里面把你说的list的值set进去,例如:session.setAttribute(key,value)。在前台页面中用<% List list = (List)session.getAttribute(key)%>得到,然后for循环,遍历list变量。追问求详细代码,我知道步骤,代码写不出来。而且我也没有用session。全是 reuqest,response
参考技术D 定义一个类,在页面直接用方法获取就行以上是关于怎么用ajax获取后台一个list集合,并在页面显示出来?的主要内容,如果未能解决你的问题,请参考以下文章
c#中,在后台传递了一个集合到.aspx页面,在页面中要怎么遍历呢?
用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,