0

ページに複数のフォームがあり、そのうちの 1 つの中のすべてのラベルを選択する必要があります。一部は、フォームの子要素 ​​(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);
4

1 に答える 1

1

あなたが持っているもの ( var $labels = $('#subForm label');) は機能します。

しかし、それを行うためのより良い/より速い方法はvar $labels = $('#subForm').find('label');.

これは、最初のメソッドが最初に DOM 内のすべてのラベルを検索し、次にそれらがその ID を持つ要素の子孫であるかどうかをテストするためですが、2 番目のメソッドはその ID を持つ要素を見つけてから、その子孫の中からラベルを探すためです。

于 2013-04-29T10:59:27.927 に答える