将转义字符串传递给JQuery($) - 函数

时间:2010-07-05 16:29:38

标签: javascript jquery regex

目前我正在尝试突出显示页面上的元素。因此,我将逗号分隔字符串传递给名为highlight的Javascript-Funktion。

highlight("main:box1,main:box2");

这个工作正常,直到我在页面上找到了ID:所以我试图通过一点正则表达式逃脱它们。事情开始有点搞笑了。

如果我通过替换:with \来转义字符串:jQuery-Function不再起作用。

var string = value.replace(/:/g, "\\\\:");
jQuery("#" + string).css("color", "red");

如果我用main替​​换main:用“”并在jQuery-Function中写main \:一切正常。

var string = value.replace(/main:/g, "");
jQuery("#main\\:" + string).css("color", "red");

我做错了什么?为什么jQuery-Function不是我的转义字符串?

需要帮助: - (

示例 - 附加代码:http://db.tt/0FLRlM

谢谢Jan

1 个答案:

答案 0 :(得分:1)

您在第一次替换尝试时双倍逃避\。您已完成的操作是将:替换为\\:,即使您在输出时可能会看到\: