Javascript Angular jqLite.find()不会返回任何输入吗?

Javascript Angular jqLite.find()不会返回任何输入吗?,javascript,jquery,html,angularjs,Javascript,Jquery,Html,Angularjs,编辑:那么这似乎是选择器的问题?jqLite是否不支持选择器或其某些简化版本 find('input')和find('button')将返回结果,但如果我尝试使用“:first”或其他内容对其进行过滤,则不会返回任何结果 我似乎无法让jqLite的find()返回div的任何子输入 我的ng show使用的布尔函数上有一块$watch。因此,当这个div变得可见时,我希望将焦点应用于div元素,然后找到第一个输入子体并将焦点放在它上面 指令监视的示例div元素: <div myDirec

编辑:那么这似乎是选择器的问题?jqLite是否不支持选择器或其某些简化版本

find('input')和find('button')将返回结果,但如果我尝试使用“:first”或其他内容对其进行过滤,则不会返回任何结果


我似乎无法让jqLite的find()返回div的任何子输入

我的ng show使用的布尔函数上有一块$watch。因此,当这个div变得可见时,我希望将焦点应用于div元素,然后找到第一个输入子体并将焦点放在它上面

指令监视的示例div元素:

<div myDirective="function()">
    text and stuff
    <button>
    <another button>
</div>

<div myDirective="function()">
    <input>
</div>
angular文档说它只能通过标记名查找,但这不是“输入”和“按钮”吗


这是怎么回事?在似乎应该支持jquery的情况下,仅针对这一个用例包含jquery似乎很愚蠢。我正在打印var任务,可以在web控制台中看到输入的子元素

JQlite与jQuery不是一回事如果页面上有jQuery,Angular将使用它,如果没有,则使用jQlite。
显然,jQlite的
.find()
只支持按标记名查找,不支持使用其他选择器(如
:first


您可以使用标准的domapi,也就是说,如果您真的需要的话。

JQlite与jQuery不是一回事如果页面上有jQuery,Angular将使用它,如果没有,则使用jQlite。
显然,jQlite的
.find()
只支持按标记名查找,不支持使用其他选择器(如
:first


如果您真的需要,也可以使用标准的DOM API。

我想我假设选择器是一个基本功能。因此,我在这些div中有两个按钮,一个是,一个否。如果我搜索“按钮”,那么我将得到两个结果,这是关注“是”按钮向这些按钮添加id=“是”,然后搜索find('button yes')?@MilanNovaković当Angular最初构思时,jQuery在web开发社区仍然非常流行的唯一方法。Angular并没有试图复制jQuery的功能,而是提供了一种开发结构的替代方法。请参阅以获得更广泛的解释。那么,当有多个结果时,如何找到我的输入?这一切也有点怪怪的。我有另一个指令,其中find with selector似乎起作用。特别是,我使用的是:visible:not(#cancel”),它只抓取我想要的continue按钮,当有十几个已定义但刚刚用ng show隐藏时。我想我假设选择器是一个基本功能。因此,我在这些div中有两个按钮,一个是,一个否。如果我搜索“按钮”,那么我将得到两个结果,这是关注“是”按钮向这些按钮添加id=“是”,然后搜索find('button yes')?@MilanNovaković当Angular最初构思时,jQuery在web开发社区仍然非常流行的唯一方法。Angular并没有试图复制jQuery的功能,而是提供了一种开发结构的替代方法。请参阅以获得更广泛的解释。那么,当有多个结果时,如何找到我的输入?这一切也有点怪怪的。我有另一个指令,其中find with selector似乎起作用。特别是,我使用的是:visible:not(#cancel”),它只抓取我想要的continue按钮,当有十几个已定义的按钮,但只是用ng show隐藏时。
function highlightAndFocus(node) {
      // focus the div
      node.focus();
      // get angular's jqlite wrapped element
      var task = angular.element(node);
      task.addClass('highlight');

      // these return empty statements
      console.log(task.find('input:first'));
      console.log(task.find('button:visible:not("#cancel"):first'));
}