【问题标题】:jquery get only all html elements with idsjquery 只获取所有带有 id 的 html 元素
【发布时间】:2009-07-22 08:39:07
【问题描述】:

我有一个包含许多 html 元素的 div,例如其他 div、trs、tds、表格等

是否可以获取所有具有 id 的元素? 我知道问$("#test") 会给我这个id 的特定元素

但是有可能得到find("#") 或类似的东西吗?!

【问题讨论】:

    标签: jquery validation


    【解决方案1】:

    $('[id]') 返回所有设置了 id 的元素

    【讨论】:

    • 警告 - 这在大型 dom 上会很慢
    • 这很整洁。这样做的唯一问题是您必须阅读节点 ID 才能知道您在看什么。并非页面上的所有 id 都会有用。但是,如果您遍历并读取节点类型,您应该能够执行诸如查找输入元素之类的操作。
    • @yitzhak $('[id]').find(':input') 仅供参考,要查找输入元素,无需手动检查类型。
    【解决方案2】:

    您可以使用以下语法来限制结果:

    $('input[id*=test_id]').live('click', callbackFunc());
    

    $('.elements_set[id*=test_id]').live('click', callbackFunc());
    

    或以同样的方式

    $('input[name*=test_id]').live('click', callbackFunc());
    

    这些被称为Attribute Selectors

    参考链接:

    【讨论】:

      【解决方案3】:

      You should look into documentation on their selectors. 这将准确地告诉您在选择某些东西时在任何情况下应该做什么。

      另请注意,您一次可以使用多个选择器,例如他们的示例:

      $("div,span,p.myClass").css("border","3px solid red");
      

      【讨论】:

      • Stackoverflow 不是用来“阅读手册”的答案,它是用来提供帮助的,这就是你得到我的 -1 的原因。
      • 这不是阅读手册的答案。它为您提供了选择器列表以及您可以使用它们执行的所有操作。我不可能在没有看到整个页面的情况下给他一个准确的答案,确切地知道他想要选择什么。它非常简单,而且在他习惯于选择事物之前,他最终会经常查看它。您愿意来这里为您所做的每种新选择提出一个问题,还是列出您可以使用它们做的所有事情以及正确的语法?
      • 不仅如此,它还列出了许多其他有用的节省时间的方法,例如过滤器和祖先。老实说,对于刚开始使用 jQuery 编写代码的人来说,这是最有用的页面之一,我希望在我开始学习 jQuery 时能够拥有它。
      猜你喜欢
      • 2019-07-10
      • 2013-12-03
      • 1970-01-01
      • 2016-05-05
      • 1970-01-01
      • 2020-02-13
      • 1970-01-01
      • 2015-03-09
      • 2018-12-20
      相关资源
      最近更新 更多