如何将类添加到包含如下所示特定文本的特定元素上:
var title = $('.pass-item .title').text();
if(title.includes('7 days within 1')){
// Here I want to select the element which has the title text '7 days within 1'
// And append a class to it
}
我希望有人能帮助我:)
答案 0 :(得分:2)
您可以使用jQuery的:contains
仅搜索该元素,然后使用addClass
添加类:
$(".pass-item .title:contains('7 days within 1')").addClass("the-class");
如果没有找到,那就很好了,jQuery的API是基于基于集合的,因此不会出现错误。
答案 1 :(得分:0)
您需要首先获取所有项目的数组,它们映射到该数组并检查每个项目中包含的文本。如果它包含必需的文本,则使用新的类将其返回,否则只需返回该项目
let titles = document.querySelectorAll('.pass-item.title')
titles = Array.prototype.slice.call(titles);
titles.map((item) => {
if (item.textContent.includes('7 days within 1')) {
item.classList.add('new-class')
return item
} else {
return item
}
});
答案 2 :(得分:0)
但是,您可以遍历具有某些类或属性的每个元素,并检查它们是否包含这样的文本:
$labels = [
'project' => 'Project Name',
'creator' => 'Creator',
'programming_language' => 'Programming Language'
];
$msg = '';
foreach ($labels as $key => $label) {
$msg .= $label . ': ' . $_POST[$key];
}