Глючит атрибут [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 должен быть только строкой, а не выражением. Как сделать, чтобы выражение можно было подставить или переменную ? если это вообще возможно... |
Не правильно указываете аттрибут:
$('a[href="b"]'); $('a[href="'+document.location.pathname+'"]'); |
Цитата:
var c = $('a[href="'+b+'"]') вот такой вариант проходит. Получается в общем случае переменную нужно обрамлять в доп. кавычки. |
romanco, думал b это не переменная, а строка для примера; сорри, недоглядел.:)
|
Часовой пояс GMT +3, время: 17:26. |