如何表达包含 XML 命名空间的 jQuery 选择器



我正在尝试为 jQuery 编写我的选择器。属性为 xlink:href,值为 #_SAPGUI-icons_0_s_wfwire 。我试图像这样构造它:

$('[xlink:href="#_SAPGUI-icons_0_s_wfwire"]')

由于表达式[xlink:href="#_SAPGUI-icons_0_s_wfwire"],我收到语法错误。

你知道怎么做吗?

问题是由于选择器中的:。您需要使用 \ 对其进行转义,如下所示:

$('[xlink\:href="#_SAPGUI-icons_0_s_wfwire"]').addClass('foo');
.foo { color: red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div xlink:href="#_SAPGUI-icons_000">#_SAPGUI-icons_000</div>
<div xlink:href="#_SAPGUI-icons_0_s_wfwire">#_SAPGUI-icons_0_s_wfwire</div>
<div xlink:href="#_SAPGUI-icons_111">#_SAPGUI-icons_111</div>

最新更新