for (var i = 1; i < 81; i++){
if($(this).hasClass('member-'+i)){
('promote'+i) = true;
}
}
我有80个可放置的盒子。它们每个都有一个名为member-1,member-2等的id,当有人将一个项目拖入框中时,该变量将变为true并传递给另一个函数。
到目前为止,我发现这不起作用。我不知道为什么。它位于可放置的拖放功能内。
因为我有80个盒子......我不想手动输入它们。
答案 0 :(得分:0)
使promote
成为一个数组,而不是80个不同的变量。然后你可以这样做:
var promote = [];
for (var i = 1; i < 81; i++){
if($(this).hasClass('member-'+i)){
promote[i] = true;
}
}
答案 1 :(得分:0)
更好的方法是看看哪些类确实存在而不是测试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