翻页实现复选框的选中问题

在选中的时候,点击绑定按钮,执行以下方法:

 1 function bangding(){
 2
 3          checkedIds="";//翻页保存选中的id
 4              var oneches=document.getElementsByName("landDkbh");
 5              for(var i=0;i<oneches.length;i++){
 6                  if(oneches[i].checked==true){
 7                      //避免重复累计id (不含该id时进行累加)
 8                      if(checkedIds.indexOf(oneches[i].value)==-1){
 9                          checkedIds=checkedIds+oneches[i].value+",";
10
11                      }
12                  }
13                  if(oneches[i].checked==false){
14                      //取消复选框时 含有该id时将id从全局变量中去除
15                      if(checkedIds.indexOf(oneches[i].value)!=-1){
16                          checkedIds=checkedIds.replace((oneches[i].value+","),"");
17                      }
18                  }
19              }
20               for(var i=0;i<oneches.length;i++){
21                      if(checkedIds.indexOf(oneches[i].value)!=-1){
22                          oneches[i].checked=true;
23                      }
24                  }
25
26               location.href="baodan.do?getLandList&currentPage="+currentpage+"&userQygs="+userQygs+"&landName="+landName+"&first=2&str1="+checkedIds;
27
28           }
29           

后台的getLandList方法:

 1     if (first == 1) {
 2
 3             // 第一次进入列表页面,需要新建session
 4             Map<Integer, List<LandUser>> flag_map = new HashMap<Integer, List<LandUser>>();
 5             request.getSession().setAttribute("jld_session", flag_map);
 6         }
 7            //將地块编号字符串分成数组,并添加到列表中
 8         if (str1 != "" && str1 != null) {
 9
10             String[] str = str1.split(",");// 用split()函数直接分割
11             List<LandUser> landList = new ArrayList<LandUser>();
12             for (int i = 0; i < str.length; i++) {
13
14                 LandUser lu = landUserBiz.getName(str[i]);
15                 landList.add(lu);
16             }
17
18             if (str != null && str.length > 0) {
19                 //获取session 内容
20                 Map<Integer, List<LandUser>> map = (Map<Integer, List<LandUser>>) request.getSession().getAttribute("jld_session");
21                 //如果map中已经不包含这一页,则添加到map中,否则,移除这一页,将这一页的新内容添加进来。
22                 if (!map.containsKey(page.getCurrentPage())) {
23                     map.put(page.getCurrentPage(), landList);
24                 } else {
25
26                     map.remove(page.getCurrentPage());
27                     map.put(page.getCurrentPage(), landList);
28                 }
29                 //设置session的map属性
30                 request.getSession().setAttribute("map", map);
31                 //如果map部位空的话,遍历map,并将map中的地块编号的值放到另一个list中
32                 if (map != null) {
33                     List<LandUser> list = new ArrayList<LandUser>();
34                     Iterator iter = map.entrySet().iterator();
35                     while (iter.hasNext()) {
36                         Map.Entry<Integer, List<LandUser>> entry = (Entry<Integer, List<LandUser>>) iter.next();
37                         List<LandUser> landList2 = entry.getValue();
38
39                         for (int i = 0; i < landList2.size(); i++) {
40
41                             list.add(landList2.get(i));
42
43                         }
44                     }
45
46                     m.addAttribute("list", list);
47                     request.getSession().setAttribute("selectedFiles", list);
48                 }
49             }
50         }

前台将获得的后台的list处理:

 1   <%   List<LandUser> selectedFiles = (List<LandUser>)request.getSession().getAttribute("selectedFiles");
 2             %>
 3
 4     function initPage(){
 5
 6            <%
 7               if(selectedFiles!=null){
 8                System.out.println("返回数量"+selectedFiles.size());
 9               for(int i=0;i<selectedFiles.size();i++){
10               %>
11              var inputs = document.getElementsByTagName("input");
12
13             for(var j= 0;j<inputs.length;j++){
14              var input = inputs[j];
15               if(input.type=="checkbox"){
16                     if(input.value=="<%=(String)selectedFiles.get(i).getLandDkbh()%>"){
17                               input.checked = true;
18                             }
19                     }
20                  }
21             <%}
22             }%>
23       } 
时间: 2024-08-02 23:37:02

翻页实现复选框的选中问题的相关文章

如何判断checkbox复选框是否选中

如何判断checkbox复选框是否选中:本章节介绍一下如何用jquery判断一个checkbox复选框是否被选中,方式有很多种,这里只是简单介绍一下比较常用的两种方式,不提供完整的代码,给出主要的代码片段.方式一: $("#ck").prop("checked")==true 关于prop()可以参阅jQuery的prop()方法一章节.方式二: $("#ck").is(":checked") :checked可以参阅jQue

jquery特效(6)—判断复选框是否选中进行答题提示

前面有一段时间思想开了小差,跟着师父学习了一段时间才发现差距很大,看来我要奋起直追~\(≧▽≦)/~啦啦啦. 最近公司在做一个项目,需要根据用户选择的选项给出相应的提示,下面来看我写的测试程序的效果: 一.实现的原理: 第一步:判断用户选择哪一项,即哪个复选框被选中 第二步:根据复选框的选中情况给出相应的提示 二.下面来看主体程序: <!DOCTYPE html> <html> <head> <meta charset="utf-8" />

jQuery实现checkbox(复选框)选中、全选反选代码

谁都知道 在html 如果一个复选框被选中 是 checked="checked". 但是我们如果用jquery alert($("#id").attr("checked")) 会提示您是true而不是checked 所以很多朋友判断  if($("#id").attr("checked")=="true") 这个是错误的,其实应该是 if($("#id").attr

js获取checkbox复选框获取选中的选项

js获取checkbox复选框获取选中的选项 分享下javascript获取checkbox 复选框获取选中的选项的方法. 有关javascript 获取checkbox复选框的实例数不胜数.js实现: var form = document.getElementById("form2"); var field = form.elements["test2"]; var option = Dining.getSelectedOption(form, field);

【JavaScript】复选框的全选、反选,判断哪些复选框被选中

复选框的全选.反选,判断哪些复选框被选中,这个功能不难做, 利用document.getElementsByName("xxx");能够轻易实现,注意其返回值是一个节点数组便是了. 不过这功能对于用户来说是非常贴心的.下面举一个例子还说明这个问题. 首先是以下的布局: HTML代码如下,非常简单,三个按钮,分别设置其onclick事件所对应处理的javascript函数. 之后有四个复选框,注意设置其统一的name值,形成一个节点数组.以便被后续的document.getElement

【jQuery】复选框的全选、反选,判断哪些复选框被选中

本文与<[JavaScript]复选框的全选.反选,判断哪些复选框被选中>(点击打开链接)为姊妹篇,把里面内容再与jQuery框架中实现一次,同样做到如下的效果: 布局还是同样的布局,只是由于在jQuery框架中,无须再为按钮,指定特定的onclick事件处理函数,直接使用jQuery指定即可: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri

JS 设置复选框的选中与取消选中

// 设置选中 function setCheckboxClick(obj) { if(obj == null) { $.messager.alert('警告', "请选择要设置选中的项!",'warning'); } // alert(obj.value); var authorityId = obj.value; $.ajax({ type: 'post', url: 'getAuthorityByAuthorityId.action', data: {"authorit

php让checkbox复选框初始选中

php让checkbox复选框初始选中,很常用的功能,备忘下: 代码如下: <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <?php $arr=array(0=>array('id'=>100,'title'=>'京东'),1=>array('id'=>200,'title'=>'天猫'),2=>array('id

判断Check复选框是否选中

1 <div id="prm_div" style="font-size: 12px;" align="left"> 2 <form id="cx" method="post"> 3 <s:iterator var="item" value="#request.optionPrm" status="status">