无法通过模板向Javascript发送数据

无法通过模板向Javascript发送数据,javascript,python,html,jinja2,bottle,Javascript,Python,Html,Jinja2,Bottle,我有一个小Python脚本,它应该向HTML文件中的javascript发送一个字符串,以便在页面上呈现。但是,脚本没有接收从Python文件发送给它的数据。我的代码如下: simple.html: <html> <body> <h1>Hello</h1> <p1 id="demo"></p1> <script> var s = {{to_display}}; var x =

我有一个小Python脚本,它应该向HTML文件中的javascript发送一个字符串,以便在页面上呈现。但是,脚本没有接收从Python文件发送给它的数据。我的代码如下:

simple.html:

<html>
 <body>
   <h1>Hello</h1>
   <p1 id="demo"></p1>
   <script>
    var s  = {{to_display}};
    var x = document.getElementById("demo");
    x.innerHTML = s;
   </script>
 </body>
</html>
我希望页面看起来像这样:

Hello

HI, how are you
不幸的是,它只显示:

Hello

有人知道如何纠正这个问题吗?

这里的问题是模板没有呈现有效的javascript

>>> from bottle import template
>>> data = {'to_display': 'HI, how are you'}
>>> rendered = template('/home/kev/tmp/test.html', data)
>>> print rendered
<html>
  <body>
    <p1 id="demo"></p1>
    <script>
        var s = HI, how are you;
        var x = document.getElementById("demo");
        x.innerHTML = s;
    </script>
  </body>
</html>
呈现到此标记,该标记在浏览器中按预期工作:

>>> print rendered
<html>
  <body>
    <p1 id="demo"></p1>
    <script>
        var s = "HI, how are you";
        var x = document.getElementById("demo");
        x.innerHTML = s;
    </script>
  </body>
</html>
>>打印渲染
var s=“你好,你好”;
var x=document.getElementById(“演示”);
x、 innerHTML=s;
<html>
  <body>
    <p1 id="demo"></p1>
    <script>
        var s = "{{ to_display }}";
        var x = document.getElementById("demo");
        x.innerHTML = s;
    </script>
  </body>
</html>
>>> print rendered
<html>
  <body>
    <p1 id="demo"></p1>
    <script>
        var s = "HI, how are you";
        var x = document.getElementById("demo");
        x.innerHTML = s;
    </script>
  </body>
</html>