我想选择一个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空间中也是不允许的。