function saveId(chkBoxObj) { //单个选中
if (chkBoxObj.checked == true) { //当选中时添加到隐藏域中
var aa = document.getElementById("chBoxIds").value;
aa += chkBoxObj.value + ",";
document.getElementById("chBoxIds").value = aa;// 把记录的ID数组字符串赋给隐藏传递的chBoxId
} else { //当未选中时去除
var strTemp = chkBoxObj.value + ",";
var bb = document.getElementById("chBoxIds").value;
bb = bb.replace(strTemp, "");
document.getElementById("chBoxIds").value = bb;// 把记录的ID数组字符串赋给隐藏传递的chBoxId
}
}
function saveIds(chkBoxObj) { //当点击全选时
if (chkBoxObj.checked == true) {
var regFormId = document.getElementsByName("ids");
var aa = document.getElementById("chBoxIds").value;
for (j = 0; j < regFormId.length; j++) {//循环添加到隐藏域
if(aa.indexOf(regFormId[j].value)==-1){ //判断是否重复以免重复添加
aa += regFormId[j].value + ",";
}
}
document.getElementById("chBoxIds").value = aa;
} else {
var regFormId = document.getElementsByName("ids");
var bb = document.getElementById("chBoxIds").value;
for (j = 0; j < regFormId.length; j++) { //循环去除隐藏域中的id
bb = bb.replace(regFormId[j].value, "");
}
document.getElementById("chBoxIds").value = bb;
}
}
<span style="white-space:pre"> </span>setTimeout("myfun()",0); //不知道为什么明明设置页面加载完再执行方法明明看见选中了但是最后还是刷新了下,所以只好用这定时执行方法了
function myfun(){
var id = document.getElementById('chBoxIds').value;
var regFormId = document.getElementsByName("ids");
var data = id.split(","); //将隐藏域id对应的checkbox选中
for (i = 0; i < data.length; i++) {
for (j = 0; j < regFormId.length; j++) {
if (data[i] == regFormId[j].value) {
regFormId[j].checked = true;
}
}
}
}
<th width="22"><input type="checkbox" group="ids"
class="checkboxCtrl" onclick="saveIds(this);"></th>全选的checkbox
<td class="tableTextAlign"><input name="ids"
value="${entity.id}" onclick="saveId(this);" type="checkbox"></td> //单个按钮
<div style="display: none"><input id="chBoxIds" name="formIds"
value="${formIds}" /></div> //隐藏选中的id
在Action里:String ids = get("formIds");
put("formIds",ids);
dwz 分页带选中的id
最新推荐文章于 2018-09-14 16:26:00 发布