【问题标题】:jQuery selectors with variables带有变量的 jQuery 选择器
【发布时间】:2011-06-21 01:48:51
【问题描述】:

如何混合变量和选择器?

我有 ID 变量。

我想从 div #one 中选择具有此 ID 的图像。

jQuery('#one img .id') 是选择器。我试过$('#one img .'+id),但没有用。

【问题讨论】:

  • 您能否提供更多代码并解释究竟是什么不起作用?

标签: jquery variables jquery-selectors


【解决方案1】:

编辑:根据您在下面的评论,您将使用这个:

$('#one img.'+id)

在你的问题中,img.class 之间有一个空格,我只是删除了它,所以你得到 img.classNameimg.'+className

随着ECMAScript 2015中template literals的引入,你也可以这样做

$(`#one img.${id}`)

【讨论】:

  • 对不起,让你们混淆了 ID 是包含 DOM CLASS 的 jQuery 变量。
  • 需要注意的是 id 必须是非数字的,如果 id 是数字的话,toString() 也是如此。
【解决方案2】:

这可能只是一个错字,或者您实际上在一个类中使用了id 变量,但也许它应该是:

jQuery('#one img #'+id)

【讨论】:

    【解决方案3】:

    . 是一个类选择器。尝试将其更改为#

    $('#one img #'+id)
    

    【讨论】:

    • 但我想选择一个班级。我正在尝试您所说的方式,但使用 .代替 #。没用。
    【解决方案4】:

    ID 在您的 HTML 中应该是唯一的。所以你应该可以直接选择ID而不必担心它在哪个DIV。既然你提到ID附加到img标签上,那么这就足够了。

    $('#' + id);
    

    【讨论】:

      【解决方案5】:

      也许您想选择带有特定类的 img 并将该类保存到 id='one' 的 div 元素内的 id 变量中。

      DEMO

      在演示中,我选择 img 元素,克隆它,然后附加到 div id=one。

      【讨论】:

        猜你喜欢
        • 2012-07-08
        • 2016-11-15
        • 1970-01-01
        • 2019-12-16
        • 1970-01-01
        • 1970-01-01
        • 2019-11-20
        • 1970-01-01
        相关资源
        最近更新 更多