Глючит атрибут [foo=bar]

В очередной раз мучения с js. Простая ситуация. Версия jquery 1.5.1
<ul>	<li><a href="/home/bob/code/menu.html">Главная</a></li>	<li><a href="articles.html">Статьи</a></li>
</ul>
var b = document.location.pathname; var c = $('a[href='+b+']'); //alert(a); var d = $.type(b)=== "string" console.log(c); console.log(b); console.log(d);
на выходе[] /home/bob/code/menu.html trueдругие варианты не прокатывают var c = $('a[href=document.location.pathname]'); инвалид var c = $("a[href="+document.location.pathname+"]"); так должно работать, но пишет синтаксическая ошибкато есть bar должен быть только строкой, а не выражением. Как сделать, чтобы выражение можно было подставить или переменную ? если это вообще возможно...
3 ответа

Не правильно указываете аттрибут: $('a[href="b"]');
$('a[href="'+document.location.pathname+'"]');


Не правильно указываете аттрибут: $('a[href="b"]');
$('a[href="'+document.location.pathname+'"]');
ага второй вариант сработал, а вот первый нетvar c = $('a[href="'+b+'"]') вот такой вариант проходит. Получается в общем случае переменную нужно обрамлять в доп. кавычки.


romanco, думал b это не переменная, а строка для примера; сорри, недоглядел.