Это потому, что «текст» в данном случае не является атрибутом.Это содержимое элемента.
Вы ищете селектор :contains()
:
$('a.a_class:contains(text)');
http://api.jquery.com/contains-selector/
Имейте в виду, что этот селектор будетсоответствовать любой части строки.contains(foo)
также будет соответствовать "foo bar".
Если вы хотите точное совпадение всей текстовой строки, вы можете использовать filter()
$('a.a_class').filter(function() {
return $(this).text() == "text";
});
РЕДАКТИРОВАТЬ:
Чтобы найти элементы, содержимое которых начинается со значения, вы можете использовать регулярное выражение внутри filter()
:
$('a.a_class').filter(function() {
return $(this).text().indexOf( "tex" ) >= 0;
});
РЕДАКТИРОВАТЬ: Обновлено для использования indexOf()
вместо регулярных выражений в соответствии с рекомендациями @ Nick.