Получить входные данные разных типов в классе, используя jQuery - PullRequest
3 голосов
/ 10 июня 2011

Скажем, у меня есть функция jquery в JavaScript, и у меня есть этот код, который прекрасно работает:

jQuery('div[class="someClass"] input[type="text"]').each( function() { //some code} . . .

В приведенном выше коде, как я могу настроить таргетинг на несколько типов входов, таких как textArea, раскрывающийся список и т. Д. Я довольно новичок в jQuery, поэтому мне неизвестен формат, в котором поиск Google не выдает ничего особенного актуальность! Пожалуйста, помогите.

Ответы [ 3 ]

8 голосов
/ 10 июня 2011

Если вы счастливы выбрать все дочерние элементы следующих типов:

  • input
  • textarea
  • select
  • button

Вы можете использовать :input селектор .

jQuery('div.someClass :input').each(function() {...

В противном случае вы можете сделать это в большом селекторе, используя множественный селектор , как предлагает Никлас. Последний вариант - сократить это, используя два варианта. Это может быть немного медленнее, но будет значительно более читабельным:

jQuery('div.someClass').find('input[type="text"], select, textarea').each(function(){...

Обратите внимание, что я использовал селектор класса , чтобы сделать ваш селектор немного более аккуратным.

3 голосов
/ 10 июня 2011

Разделите их запятой:

jQuery('div[class="someClass"] input[type="text"], div[class="someClass"] textarea, div[class="someClass"] select').each( function() { //some code}
1 голос
/ 10 июня 2011

Попробуйте:

jQuery('div[class="someClass"] :input').each(function(){
  //Do Something..
})

, чтобы избежать элементов кнопки, попробуйте:

jQuery('div[class="someClass"] :input:not(:button)').each(function(){
  //Do Something..
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...