java吧 关注:1,240,495贴子:12,714,489
  • 23回复贴,共1

后台 List<Map<String,Object 前台咋遍历

只看楼主收藏回复

在这里就拿springMVC来说,如果在controller里封装了一个 List<Map<String,Object>>对象,在前台一般有两种途径用,其一,通过jsp中的jstl标签(这里的项目用的是 springMVC+jsp ),或者用页面中的js来取用。对此,我现在有两个问题想向大神们请教:
1.如果用jstl标签,当取出的值满足某个条件后,我想增加某些html元素,如<table>、 <input>什么的,或者用jstl标签来操作某些已经存在的html元素,如给某个元素增加class,jstl标签能做到这些吗?
2.如果用js的话,对于html元素的操作当然十分简单,可是如何解析放在ModelAndView中的 List<Map<String,Object>>对象呢?js是如何对它进行解析呢,以便让它解析后方便操作其中的数值,要知道js中貌似只有数组,没有List啊?
哪些大神知道,希望帮我解答下,感激不尽啊


IP属地:河南来自Android客户端1楼2017-05-31 09:35回复
    大神们求帮忙


    IP属地:河南来自Android客户端2楼2017-05-31 09:40
    回复


      IP属地:湖南来自Android客户端3楼2017-05-31 09:45
      回复
        都可以,不过需要你自己探索


        IP属地:河南来自Android客户端4楼2017-05-31 09:46
        收起回复
          前后台数据交互一般都用json,或者把对象转成字符串


          IP属地:四川5楼2017-05-31 09:50
          收起回复
            可以的,我用的就是楼主那样的,后台那里我封装了List<List<Map<String,String>>>,
            map中封装了map.put("JD",""),map.put("WD","") 将这个放如一个list中;
            将封装好的list放入到JWdList,接着model.addAttribute("JWD", JWdList);
            前端 var heatData = [];
            var province = new Array();
            <#if JWD??>
            <#list JWD as jwd>
            var acc = new Object();
            acc.jd=${jwd.JD};
            acc.wd=${jwd.WD};
            heatData.push([acc.jd,acc.wd,0.01]);
            province.push(acc);
            </#list>
            </#if>
            代码写的不好不要喷,表示我也是刚弄这个没多久


            6楼2017-05-31 10:03
            收起回复
              后台map转化为json,ajax接受解析json完事


              IP属地:广东7楼2017-05-31 10:11
              收起回复
                先循环list集合,在根据map的key值获取值啊??


                IP属地:四川8楼2017-05-31 12:30
                回复
                  JSON.parse() ,evel(),forEach(告诉你个小秘密,js也能用),自定义标签


                  10楼2017-05-31 13:50
                  回复
                    转成json到前台用js解析不就好了


                    IP属地:山东11楼2017-05-31 14:11
                    回复