首先用的是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>
