使用jQuery在类中获取不同类型的输入

时间:2011-06-09 21:15:17

标签: jquery jquery-selectors

假设我在JavaScript中有一个jquery函数,到目前为止我有这个代码,效果很好:

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

在上面的代码中,我如何定位多种类型的输入,如textArea,下拉列表等。我是jQuery的新手,所以我不知道谷歌搜索的格式没有带来任何太多关联!请帮忙。

3 个答案:

答案 0 :(得分:8)

如果您乐意选择所有这些类型的后代元素:

  • input
  • textarea
  • select
  • button

您可以使用:input selector

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

否则,您可以使用multiple selector在大型选择器中执行此操作,正如Niklas建议的那样。最后一个选项是通过使用两个选项来缩短它。这个可能稍慢,但会更具可读性:

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

请注意,我已使用class selector使您的选择器更整洁。

答案 1 :(得分:3)

用逗号分隔:

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

答案 2 :(得分:1)

试试这个:

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

避免按钮元素尝试:

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