使用某些标记jQuery获取元素子元素

joh*_*Art 3 tags jquery dom elements css-selectors

我试图通过只提供表单的名称来获取来自jQuery的某种形式的所有输入元素,并且只知道那些想要的字段是输入元素.

让我们说:

<form action='#' id='formId'>
<input id='name' />
<input id='surname'/>
</form>
Run Code Online (Sandbox Code Playgroud)

如何使用jQuery单独访问它们?我尝试了一些$('#formId > input')没有成功的事情,实际上控制台上出现了错误"XML filter is applied to non-XML value (function (a, b) {return new (c.fn.init)(a, b);})"

也许我必须与.children或类似的东西一起做?我是jQuery的新手,我不是很喜欢Docs.它在Mootools中更友好,或者我只需要习惯它.

哦,最后但并非最不重要,我已经看过它之前问过但没有最终答案,我可以用jQuery创建一个新的dom元素并在插入它之前使用它(如果我曾经做过)到de代码中吗?在mootools中,我们有类似的东西var myEl = new Element(element[, properties]); ,你可以在进一步的表达式中引用它,但我不明白如何在jQuery上做到这一点

我最终做的是这样的事情:$('#where').before("<a id='linkId' href='#'>Link Text</a>")但是如果你知道我的意思,那么在插入之前就会失去使用它的要求.

提前致谢.

Mat*_*son 5

如果你想要所有的后代,那么@ woland的回答是有效的.如果你真的只想要你所指示的直接孩子那么

$('#form').children('input')
Run Code Online (Sandbox Code Playgroud)

Wolands匹配姓名和电话.我只匹配名字和姓氏

<form action='#' id='formId'>
<input id='name' />
<input id='surname'/>
<div>
<input id='phone'/>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)