一般jsp 翻页 选择 保留 代码

前台js(调用父页面的一个隐藏域):

//a[i]为checkbox,checkbox的value为要传递到后台的值。

function checkAll(str)
{
var parent=window.parent.document.getElementById('ListPages');
var a = document.getElementsByName(str);
var n = a.length;
for (var i=0; i<n; i++) {
a[i].checked = window.event.srcElement.checked;
}
if(window.event.srcElement.checked)
for (var i1=0; i1<n; i1++) {
if (!(parent.value.indexOf("["+a[i1].value+"]")>=0))
parent.value+="["+a[i1].value+"]";
}
var s=parent.value;
if(!window.event.srcElement.checked)
for (var i11=0; i11<n; i11++) {
parent.value=s.substring(0,s.indexOf('['+a[i11].value+']'))+s.substring(s.indexOf('['+a[i11].value+']')+('['+a[i11].value+']').length,s.length);

s=parent.value;
}

//alert(parent.value);
}

function checkItem(str)
{
var parent=window.parent.document.getElementById('ListPages');
// var parent=parent.document.getElementById('ListPages');
var e = window.event.srcElement;
var b = document.getElementsByName("allCheck");
var s=parent.value;
if(e.checked)
{
parent.value+='['+e.value+']';
ifAllChecked();
}
if(!e.checked)
{
parent.value=s.substring(0,s.indexOf('['+e.value+']'))+s.substring(s.indexOf('['+e.value+']')+('['+e.value+']').length,s.length);
ifAllChecked();
}

// alert(parent.value);
}
function ifAllChecked(){

var all = eval("document.all.allCheck" );
all.checked=true;
var a = document.getElementsByName("checkValue");
for (var i=0; i<a.length; i++)
{
if (!a[i].checked)
{
all.checked = false;
break;
}
}
}
function ifchecked()
{
var s=window.parent.document.getElementById('ListPages').value;

var a = document.getElementsByName("checkValue");
var b = document.getElementsByName("allCheck");
for (var i=0; i<a.length; i++)
{
if (s.indexOf("["+a[i].value+"]")>=0)
{
a[i].checked=true ;
}
}
ifAllChecked();
}
window.onload = ifchecked;

  后台java 解析代码:

String hiddenDeleteIds=request.getParameter("hiddenDeleteIds");
      for(int i=0;i<hiddenDeleteIds.length();i++)
      {
       if(hiddenDeleteIds.charAt(i)=='[')
        hiddenDeleteIds=hiddenDeleteIds.substring(0,i)+hiddenDeleteIds.substring(i+1);
      }
      String[] idArray=hiddenDeleteIds.split("]");

两外两个地方就是:

 父页面的隐藏域:<input type="hidden" name="ForSupPagesListPages" value="" id="ListPages"/>

还有就是在:新添页面中,提交时候的隐藏域值的清空。

原文地址:https://www.cnblogs.com/drawwindows/p/2226079.html