• Js处理后台集合List的值和下标的方法


    首先用的是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>
    复制代码
  • 相关阅读:
    C#:String.Format数字格式化输出
    System.BadImageFormatException : 未能加载文件或程序集“Medici.PaymentRecover, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。试图加载格式不正确的程序。
    How to debug windows service
    中文字符utf-8编码原则
    获取当前文件的绝对路径
    finfo_file
    usort 函数
    snmp 简单网管协议
    $this
    prinft he sprintf
  • 原文地址:https://www.cnblogs.com/pypua/p/12336347.html
Copyright © 2020-2023  润新知