如何迭代JQuery Selector元素并附加一些信息?

时间:2014-06-02 14:03:07

标签: javascript jquery html

我编写了这种JQuery选择器,它在我渲染的HTML Dom中选择了15种html“td”元素:

var parentElement = jQuery('.myClassSelector').parent();

这个jQuery给出了我所有选定元素的数量:

var parentElementSize = jQuery('.myClassSelector').parent().size();

现在我想迭代所选元素并将Informationtext附加到每个元素:

for(i = 0; i < parentElementSize; i++){
    parentElement[i].append('Some Informationtext to append !!!');          
}

但这种代码不起作用。如果我使用这种jQuery代码,那么每个元素的信息文本将被渲染15,但我想为每个元素渲染一次

jQuery(parentElement).each(function(){          
    $(this).append('Some Informationtext to append !!!');
});

我该如何解决这个问题?

非常感谢帮助我!

2 个答案:

答案 0 :(得分:3)

使用带有匿名功能的$.each时,您需要传递2个参数 首先是元素索引,第二个是元素本身。

jQuery(parentElement).each(function(i, item){          
    $(item).append('Some Informationtext to append !!!');
});

答案 1 :(得分:1)

除非您为每位家长添加不同的内容,否则您不需要循环播放 -

var parentElement = jQuery('.myClassSelector').parent(); // they're all selected
parentElement.append('Some Informationtext to append !!!'); // add one thing to each of them

以下是一个工作示例 - http://jsfiddle.net/jayblanchard/ur93v/为每个表格行添加一个新行。

var parElem = $('.foo').parent();
var newRow = '<td class="bar">bar</td>';
parElem.append(newRow);