使用“'”+ var时,JavaScript会出现奇怪的错误

时间:2011-12-01 17:52:51

标签: javascript jquery

当我在控制台中使用以下行(FF& chrome)

var stripID = "\'#strip_" + ID + "\'";
console.log(stripID);

我得到了我想要的东西:'#strip_126327' 但是当我把它放在JS文件中,执行它的函数被触发时我得到了

uncaught exception: Syntax error, unrecognized expression: ''

甚至包含文件和行参考。

此外,所有这一切的目的是获取一个字符串以放入$()选择器。

3 个答案:

答案 0 :(得分:5)

您无需转义',因为您已使用"。但更重要的是,你甚至不需要'。只需var stripID = "#strip_" + ID;

正如其他人所说,'#id_foo'实际上不是一个有效的jquery选择器。您需要一个值为#id_foo的字符串。阅读有关选择器here的更多信息。

答案 1 :(得分:4)

你不需要单引号:

var stripID = "#strip_" + ID;
$(stripID).whatever();

就足够了。 '不是选择器中的有效字符。

答案 2 :(得分:0)

您正在创建一个类似'#srip_something'的jQuery选择器。

这不是一个有效的jQuery选择器,因此jQuery会抛出此错误 jQuery选择器是普通字符串,只在字符串中包含属性值的引号。