JS如何实现按条件全选

我选择店铺之前的全选按钮,只选择该店铺下的商品,不至于去选其他店铺的商品
比如我是用input里面的stor_id来做标识成为一组,JS要怎么来实现?

<body>
<input type="checkbox" /> 全选 A1店<br />
<input type="checkbox" stor_id="a1" />商品1 <br />
<input type="checkbox" stor_id="a1" />商品2 <br />
<input type="checkbox" stor_id="a1" />商品3 <br />
<input type="checkbox" stor_id="a1" />商品4 <br />

<input type="checkbox" /> 全选 A2店<br />
<input type="checkbox" stor_id="a2" />商品1 <br />
<input type="checkbox" stor_id="a2" />商品2 <br />
<input type="checkbox" stor_id="a2" />商品3 <br />
​<input type="checkbox" stor_id="a2" />商品4 <br />

<input type="checkbox" /> 全选 A3店<br />
<input type="checkbox" stor_id="a3" />商品1 <br />
<input type="checkbox" stor_id="a3" />商品2 <br />
<input type="checkbox" stor_id="a3" />商品3 <br />
​<input type="checkbox" stor_id="a3" />商品4 <br />
</body>

帮你写好了
var allElements = document.getElementsByTagName("input");
var classElements=[];
for (var i = 0; i < allElements.length; i++) {
if (allElements[i].getAttribute("stor_id") == "a1") {
classElements[classElements.length] = allElements[i];
}
}
alert(classElements);

追问

貌似不行哦,是不是还要加一个jquery-1.4.2.min.js,或者什么JS文件,还有你这边只有a1,那如果我选择a2的呢?是不是这个代码再复制一遍?

追答

我只是把选择某一部分的的判断逻辑写在下面了

if (allElements[i].getAttribute("stor_id") == "a1") {
                classElements[classElements.length] = allElements[i];
            }
具体这个部分要做什么自己实现。
那个a1,只是做个变量。比如你点击a2部分,传递进去a2,就是你你想要的逻辑了

追问

就是不知道如何动态获取这个a1、a2、a3,要怎么把他们做成个变量?JS零基础,麻烦兄台详细点哈。

追答变通下写,这样能看懂了不?手敲的,应该差不多
<input type="checkbox" onclick=("a1")/>  全选  A1店<br />
function aa(str){

var allElements = document.getElementsByTagName("input");
        var classElements=[];
        for (var i = 0; i < allElements.length; i++) {
            if (allElements[i].getAttribute("stor_id") == "str") {
                classElements[classElements.length] = allElements[i];
            }
        }
        alert(classElements);
 }

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答