0

我正在构建一个 web 应用程序,我希望能够在特定条件下动态呈现我的 index.html 中的 div/脚本。我想做的抽象如下:

class MainHandler(webapp2.RequestHandler):
    def get(self, q):
        script = "<script>function display_alert(){ {alert('Hello world!'}}</script> <div>hello world</div>"
        if q is None:
            q = 'index.html'
        path = os.path.join (os.path.dirname (__file__), q)
        self.response.headers ['Content-Type'] = 'text/html'
        self.response.write (template.render (path, {
        "script" : script
        }))

def main ():
  application = webapp.WSGIApplication ([('/(.*html)?', MainHandler)], debug=True)
  util.run_wsgi_app (application)

if __name__ == '__main__':
  main ()

HTML 是一个简单的 index.html 文件,其中包含 {{script}}。当它渲染出来时,它看起来像这样:

在此处输入图像描述

为什么 HTML 呈现的不是我正确给出的?我尝试通过 simplejson.dumps 运行“脚本”变量,它也不起作用。

4

1 回答 1

4

我相信 Html 在 django 模板中默认被转义

在 django 中,这是通过safe模板过滤器完成的

{{ script|safe }}

你在使用 django 来渲染你的模板吗?还是不同的引擎?

于 2013-05-08T23:05:56.450 回答