在HTML属性中使用HTML实体

时间:2012-02-21 16:11:03

标签: javascript jquery html html5

我得到了这个:

Uncaught Error: Syntax error, unrecognized expression: [data-id=1|31|2]

所以我从中收集到的并且我尝试修复它是因为你不能在HTML属性中使用任何特殊字符。那么,有没有人知道我可以在一个属性中分隔数字并保持使用javascript操作的能力?

我把这个快速地拼凑在一起,以便更好地展示这个问题。 http://jsfiddle.net/zacharynicoll/fbJYq/

4 个答案:

答案 0 :(得分:1)

您忘记添加双引号

自:

$('ul[data-id=' + id + ']').show();

要:

$('ul[data-id="' + id + '"]').show();

http://jsfiddle.net/kgMGB/3/

答案 1 :(得分:1)

问题不在于|符号,而在于您的选择器。

$('ul[data-id=' + id + ']').show();

应该是

$('ul[data-id="' + id + '"]').show();

如果没有引号,任何特殊字符都将被选为选择器的一部分。

答案 2 :(得分:1)

尝试使用“”:

 $('ul[data-id="' + id + '"]').show();

编辑:哇,三个人同时得到了正确答案。我不会删除我的,但只是因为我觉得这很有趣:););-) :) (给那个1分钟更快的人,即最远的人,我建议)

答案 3 :(得分:0)

只需将|替换为-

即可

http://jsfiddle.net/kgMGB/2/