我在页面上有几个表单,我需要选择其中一个表单中的所有标签。有些是表单的子元素(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);
答案 0 :(得分:1)
你拥有的东西(var $labels = $('#subForm label');
)。
但更好/更快的方法是var $labels = $('#subForm').find('label');
。
这是因为第一种方法首先搜索DOM中的所有标签,然后测试它们是否是具有该id的元素的后代,但第二种方法找到具有该id的元素,然后在其中查找标签它的后代。