Wednesday, November 23, 2011

:contains селектор jquery и работа с переменными

Недавно пришлось повоевать с одним из множества селекторов Jquery, а именно :contains() - поиск элементов содержащих нужный текст

Синтаксис очевидно простой:
$("div:contains('John')").css("text-decoration", "underline");
Возможности кажутся просто безграничными если подставлять не статичную стоку а заменять переменной. И именно с этим возникли проблемы, об это пишут и тут: http://api.jquery.com/contains-selector/

Тоесть конструкция someVar = $ ('div:contains('" + searchStr + "')'); - вызывала ошибку и работать отказывалась. Уже сейчас не вспомню как, но решение нашлось достаточно простое заменить крайние одинарные кавычки на двойные: someVar = $ ("div:contains('" + searchStr + "')");