繰り返し処理したいフォームがあります。一度に 1 つのフィールドセットを表示してから、「次へ」および「戻る」ボタンを表示して次のセクションに移動したいと考えています。
私は最初から始めていると$('fieldset');
思いますが、その後個々の要素にアクセスするにはどうすればよいですか?
$("fieldset")[i]
動作しないようです。
jQueryでそれをどのように達成しますか?
繰り返し処理したいフォームがあります。一度に 1 つのフィールドセットを表示してから、「次へ」および「戻る」ボタンを表示して次のセクションに移動したいと考えています。
私は最初から始めていると$('fieldset');
思いますが、その後個々の要素にアクセスするにはどうすればよいですか?
$("fieldset")[i]
動作しないようです。
jQueryでそれをどのように達成しますか?
必ずしもこれをお勧めするわけではありませんが、次のとおりです。
$($('.fieldset')[i]).css(...)
動作するはずです。
への各呼び出しを$('.fieldset')[i]
新しい JQuery セレクターでラップすると、その 1 つの項目から新しい JQuery オブジェクトが作成されます。JQuery オブジェクトには、必要なメソッドcss
があります。通常の dom オブジェクトにはありません。(それはあなたが得るものです$('.fieldset')[i]
)
jQuery オブジェクトからネイティブ DOM 要素を取得するにはどうすればよいですか?
jQuery オブジェクトは、1 つ以上の DOM 要素を囲む配列のようなラッパーです。(jQuery オブジェクトではなく) 実際の DOM 要素への参照を取得するには、2 つのオプションがあります。最初の (そして最速の) 方法は、配列表記を使用することです。
$('#foo')[0]; // document.getElementById('foo') と同等 2 番目の方法は、get 関数を使用することです。
$('#foo').get(0); // 上記と同じですが、遅いだけです 引数なしで get を呼び出して、DOM 要素の真の配列を取得することもできます。
抽出した DOM 要素の周りにjQuery ラッパーを戻すには、次のようにラップし直します。
$( $('#foo')[0] ) //now it's ajQuery element again.
$("fieldset").each(function() {
// code, applied for each fieldset
})