Angularjs:如何检查元素的子元素是否包含某些元素(按ID)

时间:2015-02-27 22:46:45

标签: javascript angularjs angularjs-scope

<div id="divWrapper">
    <input id="firstInput"/>
    <div id="insideDiv">
        <input id="secondInput"/>
    </div>
</div>

这是我的HTML的基本结构。因此,访问&#34; divWrapper&#34; element如何检查它是否包含&#34; secondInput&#34;。

注意:这是没有jQuery 。仅使用Angularjs实用程序功能。

更新:解决方案应该是动态的。这意味着它应该找到任何一个孩子,它在DOM树中的水平下降了多少。

更新2:请不要被&#34;输入&#34;误导元件。我不想跟踪里面的文字。我想要一个逻辑来检查我或我的孩子是否被点击。如果不是,那么隐藏自己和我的孩子。

2 个答案:

答案 0 :(得分:2)

var secondInput = angular.element(document.querySelector("#divWrapper #insideDiv #secondInput"));

如果找不到任何内容,则会返回您要查找的元素或为空。

答案 1 :(得分:0)

angular.element("#someId").find("someOtherSelector")已经完全符合您的要求。

所以对于你的问题,你可以做...

angular.element("#divWrapper").find("#secondInput"); // Empty array OR a match