首先用的是struts2的框架,分两种情况:

1. 集合list里面是值,不是对象,后台代码:

public class myTest {
ArrayList<String> mylist;

public ArrayList<String> getMylist() {
return mylist;
}

public void setMylist(ArrayList<String> mylist) {
this.mylist = mylist;
}

public String test(){
mylist = new ArrayList<String>();
mylist.add("aa");
mylist.add("bb");
mylist.add("cc");
mylist.add("dd");
return "success";
}
}


前台代码:


首先,引入相应的标签和js库

(1)引入jstl标签库,<%@taglib uri=​"http://Java.sun.com/jsp/jstl/core"​ prefix=​"c"​%>

(2)引入​​jQuery​​​库,<script type=​"text/​JavaScript​"​ src=​"js/jquery.js"​></script>

 (3)js代码:

<script type="text/javascript">
var array = new Array();
//console.info("info");
<c:forEach items="${mylist}" var="item" varStatus="status" >
array.push("${item}");
//获得值
alert("${item}");
//获得其下标
alert("${status.count}");
//var temp = "${item}";
</c:forEach>
for(var i=0;i<array.length;i++){
alert(array[i]);
}

</script>


2.集合list中是对象,不是值

(1)后台代码:


package com.beans;

public class Dog {
String name;
int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}

public class myTest {
ArrayList<Dog> mylist;

public ArrayList<Dog> getMylist() {
return mylist;
}

public void setMylist(ArrayList<Dog> mylist) {
this.mylist = mylist;
}

public String test(){
mylist = new ArrayList<Dog>();
Dog dog1 = new Dog();
Dog dog2 = new Dog();
dog1.setName("wangwang");
dog1.setAge(121);
dog2.setName("miaomiao");
dog2.setAge(151);
mylist.add(dog1);
mylist.add(dog2);
return "success";
}

}



(2)Js代码:


<script type="text/javascript">
var array = new Array();
//console.info("info");
<c:forEach items="${mylist}" var="item" varStatus="status" >
array.push("${item}");
var temp = "${item}";
//获得其下标
alert("${status.count}");
//传递过来的是字符串,加引号
alert("${item.name}");
//传递过来的是int类型,不需要加引号
alert(${item.age});
</c:forEach>
</script>