有很多checkbox多选按钮,其中按一个按钮后选择其中一部分单选按钮,按另一个选择另一部分,也可以理解为多层次分类,按主分类按钮后钩上此主分类下的所有子分类。。。而且现在这个分类层次不至两层。。。
我现在的实现方法是,把每个多选接钮的值有规则的命名,如aaa_bbb_ccc....
如主分类为aaa,他下面的子分类就为aaa_bbb,再下层就为aaa_bbb_ccc,点aaa后就搜索所有值开始为aaa的多选按钮,打上钩,虽然这方法能实现,我也做成功了,但由于要搜索每个多选按钮的值,判断之,所以速度非常慢,我现在有几千个多项按钮,每次点一个选择一部分时,都要需要将近半分钟的时间,太慢了,这样子我向公司不能交待,请问大家有没有好的方法实现?
---------------------------------------------------------------
道理都是要用到搜索的,介绍一种快速搜索的方法:
var a = document.getElementsByName("aaa");
for (var i=0; i
1<a.length; <html="" \---------------------------------------------------------------="" a[i].checked="true;" i++)="" {="" }="" 这种只搜索同名复选框并组成集合的方式比你的那个整文搜索要快得多!="">
2<head>
3<title></title>
4<meta content="EditPlus" name="Generator"/>
5<meta content="JnKc" name="Author"/>
6<meta content="" name="Keywords"/>
7<style title="" type="text/css">
8.chk input{jnkc:expression(this.checked=false)}
9.chkd input{jnkc:expression(this.checked=true)}
10</style>
11</head>
12<body>
13<form action="" method="post">
14<div id="chk1">
15<button onclick="chk1.className='chkd'">全选</button>
16<input name="jnkc1" type="checkbox"/>
17<input name="jnkc2" type="checkbox"/>
18<input name="jnkc3" type="checkbox"/>
19<input name="jnkc4" type="checkbox"/>
20<input name="jnkc5" type="checkbox"/>
21<button onclick="chk1.className='chk'">不选</button>
22</div>
23<div id="chk2">
24<button onclick="chk2.className='chkd'">全选</button>
25<input name="jnkc6" type="checkbox"/>
26<input name="jnkc7" type="checkbox"/>
27<input name="jnkc8" type="checkbox"/>
28<input name="jnkc9" type="checkbox"/>
29<input name="jnkc10" type="checkbox"/>
30<button onclick="chk2.className='chk'">不选</button>
31</div>
32</form>
33</body>
34</a.length;>