前端
一级选框全选/取消二级选框
function pcheck(j)
{
var ch=document.getElementsByName(
"name"+j);
if(document.getElementsByName(
"name"+j)[
0].
checked==
true)
{
for(
var i=
0;i<ch.length;i++)
{
ch[i].
checked=
true;
}
}
else{
for(
var i=
0;i<ch.length;i++)
{
ch[i].
checked=
false;
}
}
}
当二级被选时,选择/取消一级选框
function ccheck(obj)
{
var ch=document.getElementsByName($(obj).attr(
"name"));
if(obj.
checked==
true){
ch[
0].
checked=
true;
}
else{
var flag=
false;
for(
var i=
1;i<ch.length;i++){
if(ch[i].
checked==
true){
flag=
true;
}
}
if(flag){
ch[
0].
checked=
true;
}
else{
ch[
0].
checked=
false;
}
}
}
后台动态生成选框
StringBuffer htmlstr = new StringBuffer();
htmlstr.append(
"<dl>");
String[] title = {
"标题一",
"标题二, "标题三
", "标题四
" };
for (int i = 1; i < 5; i++) {
htmlstr.append("<dd
class=\
"model\"><label for=\"permit_wechat\">"
+ title[i -
1] +
"</label></dd>");
@SuppressWarnings(
"rawtypes")
if (parent != null) {
for (int j =
0; j < parent.size(); j++) {
htmlstr.append(
"<dd class=\"model\">");
htmlstr.append(
"<input name=\"name"
+ parent.
get(j).
get(
"code")
+
"\" type=\"checkbox\" class=\"test\" onclick=\"pcheck("
+ parent.
get(j).
get(
"code") +
")\" id=\""
+ parent.
get(j).
get(
"code") +
"\" value=\""
+ parent.
get(j).
get(
"code") +
"\">");
htmlstr.append(
"<label for=\"permit_wechat\">"
+ parent.
get(j).
get(
"name") +
"</label></dd>");
htmlstr.append(
"<dd class=\"module\">");
if (child != null) {
for (int m =
0; m < child.size(); m++) {
htmlstr.append(
"<input name=\"name"
+ parent.
get(j).
get(
"code")
+
"\" type=\"checkbox\" class=\"test\" onclick=\"ccheck(this)\" value=\""
+ child.
get(m).
get(
"code") +
"\"" +
"id=\""
+ child.
get(m).
get(
"code") +
"\">");
htmlstr.append(
"<label for=\"permit_wechat\">"
+ child.
get(m).
get(
"name") +
"</label>");
}
}
htmlstr.append(
"</dd>");
}
}
}
htmlstr.append(
"</dl>");
选择所有选框的选中情况
var checkboxArray = [];
var map = {};
var inputs = document.getElementsByTagName(
"input");
for(
var i=
0;i<inputs.length;i++){
var obj = inputs[i];
if(obj.type==
'checkbox'){
if(obj.
checked==
true){
checkboxArray.push(obj.
value);
}
}
}