在Python中生成JavaScript字符串
我在Python变量中存储了字符串,现在我想输出一个包含JavaScript的HTML,并且需要在里面创建JavaScript变量。
比如,在Python中:
title = "What's your name?"
我使用Cheetah来生成HTML。Cheetah代码:
var title = '$title';
我该如何正确处理这些内容,以便能创建出正确的JavaScript变量呢?
我需要的实际HTML输出是:
var title = 'What\'s your name?';
2 个回答
-2
你可以在Python里先把标题中的单引号替换掉,方法是用 title = title.replace("'", "\\'")
这行代码。这样在标题传到Cheetah之前就处理好了。或者,你也可以给Cheetah添加一个自定义的过滤器,然后在模板中调用它。不过,感觉在Python这边处理起来更简单一些。
4
你可能需要用到JSON格式:
import simplejson as sj
print sj.dumps('What\'s your name?') # => '"What\'s your name?"'
不要用Cheetah生成JavaScript,已经有现成的库可以使用了。