单引号引起的错误'在javascript函数调用中

时间:2014-07-26 05:33:01

标签: javascript php syntax-error

我将值动态传递给javascript函数。

我正在从数据库中检索数据并填充到javascript函数,它没有静态绑定。

share_it(data_from_mysql_database);

share_it('value from mysql database');

有时值包含单引号(')。

像:     share_it('基本上你必须有一个好的学术历史');

因此函数调用给出错误:

Uncaught SyntaxError: Unexpected identifier 

4 个答案:

答案 0 :(得分:2)

您可以使用\字符转义这样的字符:

share_it(' Essentially you\'ll have to have a good past academic ');

或者,如果您知道需要嵌入单引号字符,则可以切换到使用双引号:

share_it(" Essentially you'll have to have a good past academic ");

答案 1 :(得分:2)

您可以在文字字符串中需要其他的双"和单'引号之间自由切换:

share_it(" Essentially you'll have to have a good past academic ");

只有在你需要两者的情况下,你才需要逃避重复的角色:

share_it(" Essentially you'll have to have a good \"past\" academic ");

答案 2 :(得分:1)

您也可以替换'在带有&#39。

的字符串中

答案 3 :(得分:-1)

你应该在上游而不是下游转换特殊字符。在上游转换它可以节省时间,因为没有经验的开发人员在发送到客户端时不关心下游的数据。由于您尚未正确转换上游数据,因此您别无选择。你应该逃避它。

share_it(escape(data_from_mysql_database));

实施例“

> escape("You're awesome");
'You%27re%20awesome'
>