<td ><div align="center"><input type="checkbox" name="regFormId" οnclick="saveId(this);" value="<c:out value='${buyRegFormDTO.id}'/>"/>
if(chkBoxObj.checked == true)
{
var aa = document.getElementById("chBoxId").value;
aa += chkBoxObj.value + ",";
document.getElementById("chBoxId").value = aa;// 把记录的ID数组字符串赋给隐藏传递的chBoxId
}
else
{
document.forms[0].regFormId.checked=false;
var strTemp;
strTemp = chkBoxObj.value + ",";
var bb = document.getElementById("chBoxId").value;
bb = bb.replace(strTemp,"");
document.getElementById("chBoxId").value = bb;// 把记录的ID数组字符串赋给隐藏传递的chBoxId
}
}
添加一个文本隐藏域保存选中复选框的id。这里的文本隐藏不能用type=hidden,要用层隐藏,要不然获取不到值的。
<div style="display:none"><input id="chBoxId" value='<c:out value="${regFormIds}"/>'></div>
// 根据复选框选择状态动态添加ID
function saveId(chkBoxObj){if(chkBoxObj.checked == true)
{
var aa = document.getElementById("chBoxId").value;
aa += chkBoxObj.value + ",";
document.getElementById("chBoxId").value = aa;// 把记录的ID数组字符串赋给隐藏传递的chBoxId
}
else
{
document.forms[0].regFormId.checked=false;
var strTemp;
strTemp = chkBoxObj.value + ",";
var bb = document.getElementById("chBoxId").value;
bb = bb.replace(strTemp,"");
document.getElementById("chBoxId").value = bb;// 把记录的ID数组字符串赋给隐藏传递的chBoxId
}
}
//页面加载的时候调用的方法
function isNotCheck(){
var id = document.getElementById('checkIds').value;
var regFormId = document.getElementsByName("regFormId");
var data = id.split(",");
for(i = 0; i < data.length; i++){
for(j = 0; j < regFormId.length; j++){
if(data[i] == regFormId[j].value){
regFormId[j].checked = true;
}
}
}
}