Jquery - 访问嵌套的子元素

Joh*_*ohn 20 javascript jquery

假设我有以下HTML -

<DIV id="ParentDiv">
    <DIV id="SubDiv1"></DIV>
    <DIV id="SubDiv2">
        <INPUT id="input">
    </DIV>
</DIV>
Run Code Online (Sandbox Code Playgroud)

要使用jquery访问input元素,它只是$("#input").我想要做的是访问它,假设我只知道顶级div的ID.

目前我有

$($($("#ParentDiv").children()[1]).children()[0])
Run Code Online (Sandbox Code Playgroud)

这似乎有效.是否有更清晰的方式来写这个,或者我的方式是否正常?

jAn*_*ndy 35

您只需.find()隐式或显式执行:

$('#ParentDiv input');  // implicitly

$('#ParentDiv').find('input'); // explicitly
Run Code Online (Sandbox Code Playgroud)

参考: .find()


dfs*_*fsq 8

你可以试试:

1. $('#ParentDiv input')
2. $('input', '#ParentDiv')
3. $('#ParentDiv').find('input')
Run Code Online (Sandbox Code Playgroud)


Mur*_*aza 5

如果您需要SubDiv2仅在拥有parentDiv信息时才能找到输入

$("#ParentDiv div:eq(1) input")
Run Code Online (Sandbox Code Playgroud)

要么

$("#ParentDiv div:eq(1)").find("input")
Run Code Online (Sandbox Code Playgroud)

eq(1)将在ParentDiv中为您提供第二个div