迭代选择的DOM元素

时间:2015-07-24 00:23:58

标签: javascript jquery html

使用jQuery,我只想迭代某些元素。现在我有了这个双循环,循环遍历所有DOM元素及其每个属性:

  domElement.find('*').each(function () {  //loop over all child elements inside parent

                $.each(this.attributes, function (i, attrib) {
                    var name = attrib.name;
                    var value = attrib.value;

                });
            });

我的问题是 - 不是循环遍历所有元素(*)我可以选择一组标记来循环,例如只有span,input,button,form等?

更冗长的方式是这样的:

      domElement.find('*').each(function () {  //loop over all child elements inside parent

               if(this.tagname is in ['span','input','button','form']){  //pseudocode

                    $.each(this.attributes, function (i, attrib) {
                        var name = attrib.name;
                        var value = attrib.value;


                    });
                 }
            });

2 个答案:

答案 0 :(得分:1)

使用多个选择器:JQuery Documentation

我认为在你的例子中代码是这样的:

var selectList = $('span, input, button, form');

答案 1 :(得分:0)

试试这个:

$('span,input,button,form').each(function (i, attrib) {
    var name = attrib.name;
    var value = attrib.value;
});

虽然Mouhamed Halloul的建议更好,但给他们一个共同的课程然后循环上课:

$('.common-class-name').each(function (i, attrib) {
    var name = attrib.name;
    var value = attrib.value;
});