目标ID隐藏具有伪ID的活动链接?

时间:2013-06-24 13:16:59

标签: jquery

我有一个独特的情况,其中动态驱动的链接包含一种我无法定位并使用jquery隐藏的ID。我称之为伪ID,因为它让我想起伪类,但我甚至不认为这种类型的ID存在。

您是否有解决方案如何定位此链接并使用此ID隐藏它?我无法在物理上更改ID,因此我不禁希望有一种方法可以通过jquery来实现它。

以下是包含相关ID的HTML:

<a href="http://www.helloworld.com" id="msgForum:print">test</a>

我尝试使用简单的隐藏功能删除它,但由于存在:print,我无法定位它。

$('#msgForum:print').hide();

这是我的小提琴:http://jsfiddle.net/YAMVA/1/

3 个答案:

答案 0 :(得分:4)

您只需要使用双反斜杠转义选择器中的特殊字符:

$('#msgForum\\:print').hide();

http://jsfiddle.net/jqHES/

来自jQuery Selectors documentation

To use any of the meta-characters ( such as  !"#$%&'()*+,./:;?@[\]^`{|}~ ) as a literal part of
a name, it must be escaped with with two backslashes: \\. For example, an element with id="foo.bar", 
can use the selector $("#foo\\.bar"). 

答案 1 :(得分:4)

使用\\来转义任何特殊字符。

$('#msgForum\\:print').hide();

http://jsfiddle.net/YAMVA/3/

特价人物!"#$%&'()*+,./:;?@[\]^{|}~

答案 2 :(得分:1)

您可以利用id属性选择器:

DEMO

$('[id="msgForum:print"]').hide();