最高半折刷qq各种业务和钻(家里人自己开的,尽管放心,大家多捧捧场)

sking7

导航

记录分页的选项(JavaScript)

实现分页时,当进入到下一页时,想继续保存上一页保存的选项。。

下面是主页的内容

<script>
var hiddenArr=[];
</script>
<iframe>
<......jsp页面、
</iframe>
    //iframe中jsp页面的java代码,用于分页的部分代码
    String gadgetIds="";//用于储存已经选中的checkbox选项
String gadgetIds_url=request.getParameter("gadgetIds");//如果是分页,会传入参数gadegIds
String IdsInSession=(String)httpSession.getAttribute("gadgetIds_left");//session中是本页面提交后,记录的所有选中的项。。。
if(gadgetIds_url==null){
gadgetIds=IdsInSession;//
}else{
gadgetIds=gadgetIds_url;
}



下面是iframe页面的JavaScript代码

~function(){//初始化,判断是后退进入的页面还是分页中进入下一页、、、
  var label="<%=gadgetIds_url%>";
  if(label==="null"){//是后退进入的页面
  var c=+"<%=currentPageStr%>";
  var sIds="<%=IdsInSession%>".split('_');//从session中读取数据,给数组赋值
  for(var i in sIds){
  parent.hiddenArr[i]=sIds[i];
  }
  }
}();

function setHiddenText(){

  var checkValues=getCheckBoxValue("checkValue");
  var currentPage=+"<%=currentPageStr%>";//当前所在的页码数。。。转为数字。。。
  if(checkValues!=""){
  var hiddenText=parent.hiddenArr;//获取父窗口的数组对象
  hiddenText[currentPage-1]=checkValues;//根据当前页,作为index给数组赋值
  }
}


已当前分页页面作为数组的index,记录值。。

但虽然记录下来了,但并没有反映到页面上。。。回到上一页,仍然没有设置、、、

function nextOrPrePage(t,nop){//上一页,下一页触发的函数。。

  var gIds=getSelectedCheckBoxIds();
  var idsA=gIds.split('_');
  if(nop=='n'){
    var p=+"<%=nextPage%>";
    gIds=idsA[p-1];//只传入将要转向页的内容,获取当前页对应的数组的字符串
    t.setAttribute("href","<%=ctx%>/jsp/head/leftManager.jsp?currentPage=<%=nextPage%>&gadgetIds="+gIds);
  }
  else if(nop=='p'){
    var f=+"<%=frontPage%>";
    gIds=idsA[f-1];
    t.setAttribute("href","<%=ctx%>/jsp/head/leftManager.jsp?currentPage=<%=frontPage%>&gadgetIds="+gIds);
  }
  return true;

}

function getSelectedCheckBoxIds(){//获取所有复选框的值。。。

  setHiddenText();//获取之前先设置
  var hiddenText=parent.hiddenArr.join('_');
  return hiddenText;
}

 

       //判断checkboxbox是否需要设置选中 
      String pstr="[,|_]"+idStr+"[,|_]";
Pattern p=Pattern.compile(pstr);
Matcher m=p.matcher(","+gIds);
if(m.find()){
return true;
}
return false;


jsp页面中

<%if(gadgetIds!=null){if(patternChecked(gadget.getId()+"",gadgetIds)) {%>checked<%}} %>




posted on 2011-11-01 17:00  G.N&K  阅读(432)  评论(0编辑  收藏  举报