你如何使用 [attribute=value] 选择器?

Posted

技术标签:

【中文标题】你如何使用 [attribute=value] 选择器?【英文标题】:How do you use the [attribute=value] selector? 【发布时间】:2011-12-04 10:45:06 【问题描述】:
var prev = b - 1;

var previousImage = $('.header ul.active').find($('li[rel=prev]'));

第一个变量是一个被减1的整数。

名为previousImage 的下一个变量是我遇到的问题。 previousImage 中的每个 lis 都有一个 rel 标签。每个增加 1。我只想选择带有数字 rel 标记的 li(在本例中为变量)。

有人可以向我解释一下如何使用 [rel=ATTRIBUTE] 选择器吗?

【问题讨论】:

【参考方案1】:

不要使用另一个 jquery 对象,你可以在一个简单的调用中完成所有你想做的事情。

var previousImage = $('.header ul.active li[rel=' + rel + ']');

【讨论】:

【参考方案2】:
var previousImage = $('.header ul.active').find($('li[rel="' + prev + '"]'));

请注意,[attribute=value] 选择器要求将值 Part 括在双引号中,如下所示:

[attribute="value"]

【讨论】:

完美答案,效果很好。我很困惑,因为当你分配一个 rel 属性时,你会这样做, .attr('rel',ATTRIBUTE);那种让我有点震惊。但是,是的,谢谢!【参考方案3】:
var previousImage = $('.header ul.active').find($('li[rel="'+prev+'"]'));

您使用了字符串 prev 而不是变量。

在等号选择器中也必须使用引号。

【讨论】:

【参考方案4】:

尝试使用.next() 这将帮助你我猜http://api.jquery.com/next/ 你只会使用$('li').next() 就是这样

【讨论】:

以上是关于你如何使用 [attribute=value] 选择器?的主要内容,如果未能解决你的问题,请参考以下文章

为被选元素设置一个以上的属性和值。

butterknife异常提示:attribute value must be constant

Jquery知识点整理

Vue中npm run build报“Error in parsing SVG: Unquoted attribute value”

如何在未选中时使check_box_tag发布'false'或'0'参数?

如何获取具有指定href属性的所有元素