如何表达一个包含XML名称空间的jQuery选择器?
问题描述:
我正在尝试为jQuery编写我的选择器。该属性为xlink:href
,值为#_SAPGUI-icons_0_s_wfwire
。我试图像这样构建它:如何表达一个包含XML名称空间的jQuery选择器?
$('[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>