Javascript for循环返回数组中一个项目的单个字母,而不是数组中的每个项目

Javascript for循环返回数组中一个项目的单个字母,而不是数组中的每个项目,javascript,jquery,loops,Javascript,Jquery,Loops,我必须把我制作的数组保存起来。一个抓取一些锚定标签,另一个抓取一组ul标签。锚定标签都具有名称属性,ul具有与锚定标签名称属性匹配的id。除此之外,所有ul都有“.students”和“.hidden”类。(所有.hidden属性都设置为显示:无) 五年级 六年级 七年级 八年级 比利·鲍勃 鲍勃·萨卡马诺 马特·布伦特 我想做的是,当我点击其中一个锚标签时,它会将其对应的名称属性与具有相同id的ul匹配,通过删除“.hidden”类使其显示,然后通过添加“.hidden”类

我必须把我制作的数组保存起来。一个抓取一些锚定标签,另一个抓取一组ul标签。锚定标签都具有名称属性,ul具有与锚定标签名称属性匹配的id。除此之外,所有ul都有“.students”和“.hidden”类。(所有.hidden属性都设置为显示:无)


  • 五年级
  • 六年级
  • 七年级
  • 八年级
  • 比利·鲍勃
  • 鲍勃·萨卡马诺
  • 马特·布伦特
我想做的是,当我点击其中一个锚标签时,它会将其对应的名称属性与具有相同id的ul匹配,通过删除“.hidden”类使其显示,然后通过添加“.hidden”类隐藏任何其他不匹配的ul

以下是我使用一个小小的jquery到目前为止得出的结论,以及我停下来的地方:

    var aGradelist = $('#grade-list ul li a');
    var aStudents = $('.students');

    aGradelist.click(function(){
        var i = '#' + $(this).attr('name');

        $('.students'+i).removeClass('hidden');

        for(var j=0;j<aStudents.length;j++)
        {
           console.log(aStudents.attr('id')[j]);
        }

});
var aGradelist=$(“#等级表ul li a”);
var aStudents=$('.students');
aGradelist.单击(函数(){
var i='#'+$(this.attr('name');
$('.students'+i).removeClass('hidden');
对于(var j=0;j请尝试以下方法:

var aGradelist = $('#grade-list ul li a');
var aStudents = $('.students');

aGradelist.click(function(){
    var i = '#' + $(this).attr('name');
    aStudents.addClass('hidden');
    $('ul' + i).removeClass('hidden');
}

这样做的目的是将
hidden
类添加到所有
ul
中,然后仅从该
ul
中删除它,该
ul
具有被单击的
anchor
的id,前提是您的html有效(没有重复的id),这应该可以做到这一点

var aGradelist = $('#grade-list ul li a');
var aStudents = $('.students');
aGradelist.click(function() {
    aStudents.addClass('hidden');
    $('#' + $(this).attr('name')).removeClass('hidden');
});
当您对其调用方法时,jQuery会立即迭代DOM元素

此外,如果您想知道初始循环有什么问题,在检索字符串的
id
属性之前,应该使用
[j]
。因此要正确检索
id
属性:

for(var j=0;j<aStudents.length;j++) {
   console.log(aStudents[j].id);
}

for(var j=0;j)。

aStudents.attr('id')
始终返回第一个元素的id属性值。
[j]
访问该字符串的第j个字母。我现在正试着弄清楚如何发音“j-th”Lol…(用头敲击键盘)…我知道一旦我看到它,它最终会变得更简单。谢谢弗洛伊德兄弟。你不会相信我为了做这件事而编造的那些可笑的循环。:)你就是那个人!
for(var j=0;j<aStudents.length;j++) {
   console.log(aStudents[j].id);
}