使用for循环和if语句检查带有数字的id名

using for loop and if statement to check id names with numbers

本文关键字:数字 id 检查 循环 for if 语句 使用      更新时间:2023-09-26
       for (var i = 1; i < 81; i++){
            if($(this).hasClass('member-'+i)){
                ('promote'+i) = true;
            }
        }

我有80个可掉落的盒子。它们每个都有一个名为member-1、member-2等的id,当有人将一项拖到框中时,该变量将被转换为true并传递给另一个函数。

到目前为止,我发现这是不工作。我不知道为什么。它在一个可丢弃函数中。

因为我有80个盒子…我不喜欢手动输入。

promote设置为数组,而不是80个不同的变量。然后你可以这样做:

   var promote = [];
   for (var i = 1; i < 81; i++){
        if($(this).hasClass('member-'+i)){
            promote[i] = true;
        }
    }

最好是看看有哪些类存在,而不是测试81个不同的类:

var matches, promotes = [], cls = this.className;
var regex = /member-('d+)/g;
while (matches = regex.exec(cls)) {
    // matches[1] contains the number from the member-xx class name
    promotes.push(parseInt(matches[1], 10));
}
// promotes is an array that contain a list of the member-xx numbers that exist
// on this object