我想選擇一個ID爲「關於我」的div。由於空間的原因,我認爲我有問題。jquery選擇器問題
alert($link.attr("title"));
我得到 「關於我」
alert($('#'+$link.attr("title")).attr("title"));
我得到了一個未定義。
我試圖使用php和jquery方法來刪除它們,但它不起作用。
那麼我該如何解決這個問題?
我想選擇一個ID爲「關於我」的div。由於空間的原因,我認爲我有問題。jquery選擇器問題
alert($link.attr("title"));
我得到 「關於我」
alert($('#'+$link.attr("title")).attr("title"));
我得到了一個未定義。
我試圖使用php和jquery方法來刪除它們,但它不起作用。
那麼我該如何解決這個問題?
你需要把空格去掉,用空格ID無效,你就會有各種各樣的問題......就這樣:)
您可以逃避它like this:
alert($('#'+$link.attr("title").replace(/ /g, "\\ ")).attr("title"));
但這不是解決問題的正確方法,刪除空格是正確的方法。
一般來說,如果您想通過變量ID獲取元素,最好通過普通的DOM getElementById
方法來做到這一點,而不是試圖用選擇器來解決它帶來的所有轉義問題。例如:
$(document.getElementById($link.attr("title")))
但是,對於空格字符的特殊情況,它是無效的,句號;正如Nick所說,你需要擺脫它。儘管HTML5中的ID比HTML4和XHTML1中的寬容得多,但即使在HTML5空間中也是不允許的。