选择不同深度的元素Jquery

时间:2013-04-29 10:56:32

标签: jquery forms select element

我在页面上有几个表单,我需要选择其中一个表单中的所有标签。有些是表单的子元素(p,div ...)。

这样做的最佳方式是什么?

var $labels = $('#subForm label'); // want all labels at different depths
var values = {};
$labels.each(function() {
    values[this.name] = $(this).text();
});
console.log(values);

1 个答案:

答案 0 :(得分:1)

你拥有的东西(var $labels = $('#subForm label');)。

但更好/更快的方法是var $labels = $('#subForm').find('label');

这是因为第一种方法首先搜索DOM中的所有标签,然后测试它们是否是具有该id的元素的后代,但第二种方法找到具有该id的元素,然后在其中查找标签它的后代。