Jquery选择除其他字段之外的所有表单字段

时间:2013-09-20 06:59:15

标签: jquery

<form id="test">
   <input type="text" name="title" value="I am title">
   <div id="text1">
      <input type="text" name="module-title" value="I am module title">
   </div>
   <div id="test2">
      <input type="text" name="article-title" value="I am article title">
   </div>
</form>

如何通过jquery选择所有表单(即#test)输入字段,但“#test2”中的所有输入字段除外。

6 个答案:

答案 0 :(得分:6)

尝试

$('#test input:text').not('#test2 input:text')

答案 1 :(得分:4)

$('#test :input:not(#test2 :input)')

:input是一个特殊的伪选择器,可匹配所有输入元素,例如inputselecttextarea

JSFiddle:http://jsfiddle.net/vudS3/

答案 2 :(得分:1)

我建议:

$('#test input').not('#test2 *')

JS Fiddle demo

请注意,上述代码中的*可以替换为input或任何其他更具体的CSS选择器。

参考文献:

答案 3 :(得分:0)

使用jquery你可以做到这一点。

var formElements = $("#test :input").not('#test2 :input');

了解更多信息click here

答案 4 :(得分:0)

这应该是技巧$('test1').find('input')

答案 5 :(得分:0)

您可以使用.not() selector

执行此操作

在你的情况下:

var my form = $('#test').not('#test2');

会做到这一点。