Вопрос по jquery, javascript – Если элемент содержит определенный текст

13
$('.test').css('background','red');

<div id="example">Some text</div>

Как я могу.addClass('test') если#example содержит слово & quot; текст & quot ;?

1. Возьми вопрос, добавь & quot; jquery & quot; перед этим. & quot; jquery, если элемент содержит определенный текст & quot;2. Зайдите в гугл и запустите поиск. Joonas
Что вы пробовали? Честно говоря, это похоже на очень прямолинейное использование jQuery API. T.J. Crowder

Ваш Ответ

3   ответа
16

просто используйте:contains pseudoclass

$('#example:contains("text")').addClass('test');

это добавит класс к#example если он содержит «текст»

6

$("#example") чтобы получить оболочку jQuery для элемента, затем используйтеtext() чтобы получить его текст, и использоватьString#indexOfНапример:

var ex = $("#example");
if (ex.text().indexOf("text") !== -1) {
    ex.addClass("test");
}

Вы также можете использовать:contains("text") в селекторе какФ. Кальдеран показываетХотя обратите внимание, что когда вы используете нестандартные псевдоселекторы, подобные этому, jQuery не может использовать встроенные в браузер вещи для поиска элементов, поэтому он может работать медленнее. Вышеуказанное позволит использовать jQuerydocument.getElementById, Однако есть только несколько ситуаций, когда скорость действительно имеет значение.

1

попробуйте следующий код

$('#example:contains("text")').addClass('test');

ПосмотриВот для примеров и объяснений:contains селектор

Похожие вопросы