2012-11-13 103 views
1

我用下面的代碼可以選擇從導航無序列表當前頁面列表中的項目,但我不斷收到關於'a[href$="{server-relative URL}"]'jQuery的屬性選擇器無法識別的表達錯誤

我檢查匹配的引號無法識別的表達錯誤/支架,其他的問題提了,該鏈接不包含字符超出了通常的/ & ? %我正在使用的代碼是:

$(document).ready(function() { 
    var pathname = window.location.pathname; 
    var selector = "'a[href$=\"" + pathname + "\"]'"; 
    var listItem = $(selector).parent().parent(); 
    listItem.addClass('selected'); 
}); 

我使用jQuery 1.8.2(最新版本)。謝謝!

+1

爲什麼' 「'',當只有一個分隔符(無論是'」'或''')應該是足夠了嗎? – raina77ow

+1

仔細檢查你的報價,這就是問題。 – elclanrs

回答

6

問題是,你用單引號括住你的選擇器。只是改變這一行:

var selector = "'a[href$=\"" + pathname + "\"]'"; 

...這樣的:

var selector = 'a[href$="' + pathname + '"]'; 
+0

D'oh。漫長的一天! – Mourndark

+2

注 - 帶斜線的地址必須在引號中:)例如。這將工作:[id = song1]但這不會:[id = songs/song01.mp3],所以你只需要它[id =「songs/song01.mp3」] :) –

+0

謝謝這個解決方案讓我天 – DownDown

相關問題