Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angularjs:如何检查元素';s子元素包含某些元素(按ID)_Javascript_Angularjs_Angularjs Scope - Fatal编程技术网

Javascript Angularjs:如何检查元素';s子元素包含某些元素(按ID)

Javascript Angularjs:如何检查元素';s子元素包含某些元素(按ID),javascript,angularjs,angularjs-scope,Javascript,Angularjs,Angularjs Scope,这是我的HTML的基本结构。所以,给定对“divWrapper”元素的访问权限,我如何检查它是否包含“secondInput” 注意:这是在没有jQuery的情况下完成的。仅使用Angularjs实用程序函数 更新:解决方案应该是动态的。这意味着它应该找到任何子级,不管它在DOM树中的级别有多低 更新2:请不要被“输入”元素误导。我不想追踪里面的文字。我想要一个逻辑来检查我或我的孩子是否被点击。如果没有,那就把我和我的孩子藏起来 <div id="divWrapper"> &

这是我的HTML的基本结构。所以,给定对“divWrapper”元素的访问权限,我如何检查它是否包含“secondInput”

注意:这是在没有jQuery的情况下完成的。仅使用Angularjs实用程序函数

更新:解决方案应该是动态的。这意味着它应该找到任何子级,不管它在DOM树中的级别有多低


更新2:请不要被“输入”元素误导。我不想追踪里面的文字。我想要一个逻辑来检查我或我的孩子是否被点击。如果没有,那就把我和我的孩子藏起来

<div id="divWrapper">
    <input id="firstInput"/>
    <div id="insideDiv">
        <input id="secondInput"/>
    </div>
</div>
这将返回您正在查找的元素,如果找不到任何内容,则返回为空。

angular.element(“#someId”)。find(“someOtherSelector”)
已经完成了您想要的操作

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

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

querySelector
也可用于原始DOM元素(查询应用于子元素),您可以使用数组索引器
el[0]
从角度“元素”获取该元素。此解决方案非常静态。我想要一些动态的东西,可以找到任何子节点,可能是树下的多个层次。类似于jQuery中的“find”函数。你真的应该寻找一个ng模型,而不是通过DOM相关元素来寻找。请不要被“input”元素误导。我不想追踪里面的文字。我想要一个逻辑来检查我或我的孩子是否被点击。如果没有,那么隐藏我自己和我的孩子。这仍然应该从控制器端而不是从DOM驱动。Angular不仅跟踪“文本”,还可以跟踪布尔集合、重复项的索引以及许多其他实用的东西。操作DOM是一种脆弱的静态动态方式,完全有意义。但是,这是我在尝试了一个looot之后实际上无法理解的。你能帮我写一个代码片段吗?我不完全确定你要做的是什么逻辑,但这里有一个plunker,显示了如何单击一个复选框将一个子项设置为true,并同时显示它:jqLite版本的find是否仅限于按标记名查找?
angular.element("#divWrapper").find("#secondInput"); // Empty array OR a match