Разбить форму с помощью jQuery? - PullRequest
0 голосов
/ 23 февраля 2011

У меня есть форма, которую я хочу перебрать.Я хочу показывать один набор полей за раз, а затем показывать кнопки «Далее» и «Назад», чтобы перейти к следующему разделу.

Я предполагаю, что я начинаю с $('fieldset');, но как после этого получить доступ к отдельным элементам? $("fieldset")[i], похоже, не работает.

Как бы мне этого добиться с помощью jQuery?

Ответы [ 3 ]

2 голосов
/ 23 февраля 2011

Я не обязательно рекомендую это, но:

$($('.fieldset')[i]).css(...)

Должно работать.

Если вы заключаете каждый вызов в $('.fieldset')[i] в новом селекторе JQuery, вы создаете новыйОбъект JQuery из этого единственного элемента.У объектов JQuery есть метод css, который вы хотите.Обычные объекты дом не делают.(Это то, что вы получаете с $('.fieldset')[i])

1 голос
/ 23 февраля 2011

Из документации jQuery :

Как извлечь нативный элемент DOM из объекта jQuery?

A jQueryОбъект представляет собой массивоподобную оболочку вокруг одного или нескольких элементов DOM.Чтобы получить ссылку на фактические элементы DOM (вместо объекта jQuery), у вас есть два варианта.Первый (и самый быстрый) метод заключается в использовании записи массива:

$ ('# foo') [0];// эквивалент document.getElementById ('foo') Второй метод заключается в использовании функции get:

$ ('# foo'). get (0);// идентично вышеописанному, только медленнее Вы можете также вызвать get без каких-либо аргументов, чтобы получить истинный массив элементов DOM.

Чтобы получить оболочку jQuery back вокруг элемента DOMВы только что извлекли, перемотайте это так:

$( $('#foo')[0] ) //now it's ajQuery element again.
0 голосов
/ 23 февраля 2011
$("fieldset").each(function() {
  // code, applied for each fieldset
})
...