我正在尝试在 jquery 中选择具有特定文本的跨度。Jquery“包含”不是很严格,所以如果我使用它并搜索“选项卡”,它也会选择“表”,这是我不想要的。
$(".spanbox:contains('Tab')").css('background-color', 'Green')
示例跨度:
<span class="spanbox">Tab</span>
<span class="spanbox">Table</span>
有没有办法专门选择具有特定文本的班级成员?
我正在尝试在 jquery 中选择具有特定文本的跨度。Jquery“包含”不是很严格,所以如果我使用它并搜索“选项卡”,它也会选择“表”,这是我不想要的。
$(".spanbox:contains('Tab')").css('background-color', 'Green')
示例跨度:
<span class="spanbox">Tab</span>
<span class="spanbox">Table</span>
有没有办法专门选择具有特定文本的班级成员?
您可以使用带有函数参数的.filter()来执行此操作,如下所示:
$(".spanbox").filter(function() {
return $(this).text() == 'Tab';
}).css('background-color', 'Green');
试试这种方式:
$.fn.textEquals = function (text) {
var match = false;
$(this).each(function () {
if ($(this).text().match("^" + escapeRegex(text) + "$")) {
match = true;
return false;
}
});
return match;
};
$(".spanbox").textEquals('Tab').css('background-color', 'Green');
$(".spanbox").textEquals('Table').css('background-color', 'Red');