Jquery为特殊字符id添加类

时间:2011-05-24 13:40:15

标签: javascript jquery special-characters

我有一个带有特殊字符的ID,例如

var aaa = "someCompany="some's Data"";
aaa = aaa.replace(/"/gi, "\"").replace(/'/gi, "\'").replace(/&/gi, "\&");
var abc = aaa.replace(/\"/gi, "\\\"").replace(/\:/gi, "\:").replace(/\'/gi,"\\\'");
var abcId = "li[id=\"" + abc + "\"]";
$(abcId).addClass(" sel");

在IE中无法为“abcId”添加“addClass”,但在firefox中运行良好。

有人可以告诉我如何处理这些特殊字符......

提前致谢

2 个答案:

答案 0 :(得分:1)

我不完全确定你要做什么,但你可能会考虑做一些便宜的事情,比如编写id的URL编码。然后你可以使用$('#' + escape(theID))来获取JQuery。之后,您可以使用$('#' + escape(theID)).addClass("sel")

添加课程

为了进一步说明,你要写出你的HTML,其ID ID编码如下:(大多数服务器技术可以通过简单的方法调用来实现)

<div id="someCompany%3D%26%23034%3Bsome's+Data%26%23034%3B">Content here.</div>

然后你的javascript会是这样的:

$('#' + escape("someCompany=&#034;some's Data&#034;")).addClass("sel")

答案 1 :(得分:0)

为什么不尝试:

$(abc).addClass("sel");

如果您有li的ID,为什么使用选择器?