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

时间:2017-03-31 13:27:26

标签: javascript jquery

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

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

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

你知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:4)

问题在于选择器中的:。您需要使用\\转义它,如下所示:



$('[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>
&#13;
&#13;
&#13;