在js中嵌套java代码

Posted 水狼一族

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在js中嵌套java代码相关的知识,希望对你有一定的参考价值。

jsp中有时候在js中操作某些java后台传递过来的数据逻辑比较复杂,比如list内容的遍历,可以直接在页面上添加java脚本来执行内容,代码如下:

        //在js中插入java代码操作
        <%
              //取出java后台设置好的userList
              List<Map<String,String>> userList = (List<Map<String,String>>)request.getAttribute("userList");
            //如果userList的值为空则实例化
              if(userList==null){
                  userList = new ArrayList<Map<String,String>>();
              }
        %>
        //如果userList内有数据 
          if (<%=userList.size()%>>0) {
          <%
                  //遍历list中的内容
                  for (Map<String,String> user : userList) {
                    String userId = user.get("userId");
                    String userName = user.get("userName");
          %>
                  //在java遍历中调用js方法,传参
                  toAdd("<%=userId%>","<%=userName%>");
          <%
                  }
          %>
        //如果userList中无知就要把java后台设置好的两个参数拿出来做参数
        }else{
            //销售人员ID
             var userId = "${userId}";
               //销售人员姓名
               var userName = "${userName}";
            toAdd(userId,userName);
        }

这样的操作省去了js页面接收java数据的内容,java代码如下:

List<Map<String, String>> mapList = new ArrayList<Map<String,String>>();
Map<String, String> map = new HashMap<String,String>();
map.put("userId", "1");
map.put("userName", "水狼一族");
mapList.add(map);
req.setAttribute("userList", mapList);

 

以上是关于在js中嵌套java代码的主要内容,如果未能解决你的问题,请参考以下文章

Recyclerview 滚动在嵌套滚动视图中的片段中不起作用

Android 动画嵌套片段

条件片段和导航重用

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

js代码嵌套问题,为啥外层定义的变量内层不能使用

访问嵌套片段的文本字段