我将值动态传递给javascript函数。
我正在从数据库中检索数据并填充到javascript函数,它没有静态绑定。
share_it(data_from_mysql_database);
像
share_it('value from mysql database');
有时值包含单引号(')。
像: share_it('基本上你必须有一个好的学术历史');
因此函数调用给出错误:
Uncaught SyntaxError: Unexpected identifier
答案 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'
>